From c72c7e65759616d5e91716e286071f3fff24d2d0 Mon Sep 17 00:00:00 2001 From: Adrian Knoth Date: Mon, 22 Apr 2013 19:19:33 +0200 Subject: [PATCH 01/10] Fix license in fastlog. Date: Mon, 22 Apr 2013 19:09:04 +0200 From: Laurent de Soras To: Adrian Knoth Subject: Re: License of FastLog Hi Adrian, > Several open-source projects like Ardour use the code below which has > no explicit license. > > If you agree (read: reply), we'd like to add the MIT license to this > file, that is, change the copyright statement to the following text: Nowadays I license my code under the WTFPL, which should be compatible with the traditional open source licenses. So please use this one instead: -- Laurent de Soras | Ohm Force DSP developer & Software designer | Digital Audio Software http://ldesoras.free.fr | http://www.ohmforce.com --- libs/pbd/pbd/fastlog.h | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/libs/pbd/pbd/fastlog.h b/libs/pbd/pbd/fastlog.h index 9897da773a..f64ad996cf 100644 --- a/libs/pbd/pbd/fastlog.h +++ b/libs/pbd/pbd/fastlog.h @@ -1,6 +1,10 @@ -/* Copyright unknown. Code by Laurent de Soras . - */ +/* +Copyright © 2013 Laurent de Soras +This work is free. You can redistribute it and/or modify it under the +terms of the Do What The Fuck You Want To Public License, Version 2, +as published by Sam Hocevar. See http://www.wtfpl.net/ for more details. +*/ #ifndef __pbd_fastlog_h__ #define __pbd_fastlog_h__ From 55e07a7243f27d96e72eb95558b2aa1026886527 Mon Sep 17 00:00:00 2001 From: Adrian Knoth Date: Mon, 22 Apr 2013 19:33:19 +0200 Subject: [PATCH 02/10] Drop obsolete powermate code from libs/surface --- libs/surfaces/powermate/README | 21 --- libs/surfaces/powermate/i18n.h | 16 -- libs/surfaces/powermate/interface.cc | 57 ------ libs/surfaces/powermate/powermate.cc | 258 --------------------------- libs/surfaces/powermate/powermate.h | 34 ---- libs/surfaces/powermate/wscript | 37 ---- libs/surfaces/wscript | 4 - 7 files changed, 427 deletions(-) delete mode 100644 libs/surfaces/powermate/README delete mode 100644 libs/surfaces/powermate/i18n.h delete mode 100644 libs/surfaces/powermate/interface.cc delete mode 100644 libs/surfaces/powermate/powermate.cc delete mode 100644 libs/surfaces/powermate/powermate.h delete mode 100644 libs/surfaces/powermate/wscript diff --git a/libs/surfaces/powermate/README b/libs/surfaces/powermate/README deleted file mode 100644 index d786b1d898..0000000000 --- a/libs/surfaces/powermate/README +++ /dev/null @@ -1,21 +0,0 @@ - -This module works with the Griffin Powermate and allows some basic transport control. - -It autodetects the Powermate on any input device of the form "/dev/input/event*". This means you must have the powermate module in your kernel. It works out-of-the-box with 64Studio and presumably lots of other modern distributions. - -Turning the wheel left and right will act as a "Shuttle" wheel, adjusting playback speed up and down -Pushing the knob will switch between play and stop -Pushing the knob while turning will jump to the next or previous markers - - -In order for the powermate to work, you have to have permission to open the input device for reading. -In debian, I changed /etc/udev/rules.d/0_permissions.rules to have the line: -KERNEL=="event[0-9]*", MODE="0666" -but there are other ways to achieve this - - -Feedback, tweaks, bug fixes and feature ideas are encouraged - --Ben Loftis, ben@benloftis.com - - \ No newline at end of file diff --git a/libs/surfaces/powermate/i18n.h b/libs/surfaces/powermate/i18n.h deleted file mode 100644 index dcbbfcf52e..0000000000 --- a/libs/surfaces/powermate/i18n.h +++ /dev/null @@ -1,16 +0,0 @@ -#ifndef __i18n_h__ -#define __i18n_h__ - -#include "pbd/compose.h" -#include "pbd/convert.h" -#include "gettext.h" - -#include -#include - -#define _(Text) dgettext (PACKAGE,Text) -#define N_(Text) gettext_noop (Text) -#define X_(Text) Text -#define I18N(Array) PBD::internationalize (PACKAGE, Array) - -#endif // __i18n_h__ diff --git a/libs/surfaces/powermate/interface.cc b/libs/surfaces/powermate/interface.cc deleted file mode 100644 index 02ddf97722..0000000000 --- a/libs/surfaces/powermate/interface.cc +++ /dev/null @@ -1,57 +0,0 @@ -/* - Ardour9pin interface file - Ben Loftis - Created: 05/18/06 11:07:56 - Copyright Harrison Audio, LLC, 2007 -*/ - -#include "powermate.h" - -using namespace ARDOUR; - -ControlProtocol* -new_powermate_protocol (ControlProtocolDescriptor* /*descriptor*/, Session* s) -{ - PowermateControlProtocol* pcp = new PowermateControlProtocol (*s); - - if (pcp->set_active (true)) { - delete pcp; - return 0; - } - - return pcp; - -} - -void -delete_powermate_protocol (ControlProtocolDescriptor* /*descriptor*/, ControlProtocol* cp) -{ - delete cp; -} - -bool -probe_powermate_protocol (ControlProtocolDescriptor* /*descriptor*/) -{ - return PowermateControlProtocol::probe (); -} - -static ControlProtocolDescriptor powermate_descriptor = { - name : "powermate", - id : "uri://ardour.org/ardour/powermate:0", - ptr : 0, - module : 0, - mandatory : 0, - supports_feedback : false, - probe : probe_powermate_protocol, - initialize : new_powermate_protocol, - destroy : delete_powermate_protocol -}; - - -extern "C" { -ControlProtocolDescriptor* -protocol_descriptor () { - return &powermate_descriptor; -} -} - diff --git a/libs/surfaces/powermate/powermate.cc b/libs/surfaces/powermate/powermate.cc deleted file mode 100644 index 0475603a51..0000000000 --- a/libs/surfaces/powermate/powermate.cc +++ /dev/null @@ -1,258 +0,0 @@ -/* - powermate.cc - Ben Loftis - Created: 03/26/07 20:07:56 -*/ - - -#include -#include -#include -#include -#include -#include - -#include - -#include "pbd/pthread_utils.h" -#include "pbd/xml++.h" -#include "pbd/error.h" - -#include "ardour/debug.h" - -#include "powermate.h" -#include "i18n.h" - -using namespace ARDOUR; -using namespace std; -using namespace sigc; -using namespace PBD; - -#define NUM_VALID_PREFIXES 2 - -static const char *valid_prefix[NUM_VALID_PREFIXES] = { - "Griffin PowerMate", - "Griffin SoundKnob" -}; - -#define NUM_EVENT_DEVICES 16 - -int open_powermate (const char *dev, int mode) -{ - if (!Glib::file_test (dev, Glib::FILE_TEST_EXISTS)) { - return -1; - } - - int fd = open(dev, mode); - int i; - char name[255]; - - if (fd < 0) { - if (errno != EACCES) { - error << string_compose ("Unable to open \"%1\": %2", dev, strerror(errno)) << endmsg; - } - return -1; - } - - /* placate valgrind */ - name[0] = '\0'; - - if (ioctl (fd, EVIOCGNAME (sizeof(name)), name) < 0) { - error << string_compose ("\"%1\": EVIOCGNAME failed: %2", dev, strerror(errno)) << endmsg; - close (fd); - return -1; - } - - // it's the correct device if the prefix matches what we expect it to be: - for (i = 0; i < NUM_VALID_PREFIXES; ++i) { - if (!strncasecmp (name, valid_prefix[i], strlen (valid_prefix[i]))) { - return fd; - } - } - - close (fd); - return -1; -} - -int find_powermate(int mode) -{ - char devname[256]; - int i, r; - - for (i = 0; i < NUM_EVENT_DEVICES; i++) { - sprintf (devname, "/dev/input/event%d", i); - r = open_powermate (devname, mode); - if (r >= 0) { - return r; - } - } - - return -1; -} - -PowermateControlProtocol::PowermateControlProtocol (Session& s) - : ControlProtocol (s, "powermate") -{ -} - -PowermateControlProtocol::~PowermateControlProtocol () -{ - set_active (false); -} - -bool -PowermateControlProtocol::probe () -{ - int port = find_powermate( O_RDONLY ); - - if (port < 0) { - if (errno == ENOENT) { - DEBUG_TRACE (DEBUG::ControlProtocols, "Powermate device not found; perhaps you have no powermate connected"); - } else { - DEBUG_TRACE (DEBUG::ControlProtocols, string_compose ("powermate: Opening of powermate failed - %1\n", strerror(errno))); - } - return false; - } - - close (port); - return true; -} - -int -PowermateControlProtocol::set_active (bool inActivate) -{ - if (inActivate != _active) { - - if (inActivate) { - - mPort = find_powermate(O_RDONLY); - - if ( mPort < 0 ) { - return -1; - } - - if (pthread_create_and_store ("Powermate", &mThread, SerialThreadEntry, this) == 0) { - _active = true; - } else { - return -1; - } - - printf("Powermate Control Protocol activated\n"); - - } else { - pthread_cancel (mThread); - close (mPort); - _active = false; - printf("Powermate Control Protocol deactivated\n"); - } - } - - return 0; -} - -XMLNode& -PowermateControlProtocol::get_state () -{ - XMLNode* node = new XMLNode (X_("Protocol")); - node->add_property (X_("name"), _name); - return *node; -} - -int -PowermateControlProtocol::set_state (const XMLNode& /*node*/, int /*version*/) -{ - return 0; -} - - -void* -PowermateControlProtocol::SerialThreadEntry (void* arg) -{ - static_cast(arg)->register_thread ("Powermate"); - return static_cast(arg)->SerialThread (); -} - -#define BUFFER_SIZE 32 - -bool held = false; -bool skippingMarkers = false; - -void -PowermateControlProtocol::ProcessEvent(struct input_event *ev) -{ -#ifdef VERBOSE - fprintf(stderr, "type=0x%04x, code=0x%04x, value=%d\n", - ev->type, ev->code, (int)ev->value); -#endif - - switch(ev->type){ - case EV_MSC: - printf("The LED pulse settings were changed; code=0x%04x, value=0x%08x\n", ev->code, ev->value); - break; - case EV_REL: - if(ev->code != REL_DIAL) - fprintf(stderr, "Warning: unexpected rotation event; ev->code = 0x%04x\n", ev->code); - else{ - if (held) { - //click and hold to skip forward and back by markers - skippingMarkers = true;; - if (ev->value > 0) - next_marker(); - else - prev_marker(); - } else { - //scale the range so that we can go from +/-8x within 180 degrees, with less precision at the higher speeds - float speed = get_transport_speed(); - speed += (float)ev->value * 0.05; - if (speed > 1.5 || speed < -1.5 ) - speed += ev->value; - set_transport_speed( speed ); - } - } - break; - case EV_KEY: - if(ev->code != BTN_0) - fprintf(stderr, "Warning: unexpected key event; ev->code = 0x%04x\n", ev->code); - else - if (ev->value) - held = true; - else { - held = false; - if (skippingMarkers) { - skippingMarkers = false; - } else { - if (get_transport_speed() == 0.0) { - set_transport_speed(1.0); - } else { - set_transport_speed(0.0); - } - } - } - break; - } - - fflush(stdout); -} - -void* -PowermateControlProtocol::SerialThread () -{ - struct input_event ibuffer[BUFFER_SIZE]; - int r, events, i; - - while(1){ - r = read(mPort, ibuffer, sizeof(struct input_event) * BUFFER_SIZE); - if( r > 0 ){ - events = r / sizeof(struct input_event); - for(i=0; i -#include - -#include "control_protocol/control_protocol.h" - -class PowermateControlProtocol : public ARDOUR::ControlProtocol -{ - public: - PowermateControlProtocol (ARDOUR::Session&); - virtual ~PowermateControlProtocol(); - - int set_active (bool yn); - static bool probe (); - - XMLNode& get_state (); - int set_state (const XMLNode&, int version); - - private: - - static void* SerialThreadEntry (void* arg); - void* SerialThread (); - - void ProcessEvent(struct input_event *ev); - - int mPort; - pthread_t mThread; - -}; - - -#endif diff --git a/libs/surfaces/powermate/wscript b/libs/surfaces/powermate/wscript deleted file mode 100644 index fb97607169..0000000000 --- a/libs/surfaces/powermate/wscript +++ /dev/null @@ -1,37 +0,0 @@ -#!/usr/bin/env python -from waflib.extras import autowaf as autowaf -import os - -# Library version (UNIX style major, minor, micro) -# major increment <=> incompatible changes -# minor increment <=> compatible changes (additions) -# micro increment <=> no interface changes -LIBARDOUR_POWERMATE_LIB_VERSION = '4.1.0' - -# Mandatory variables -top = '.' -out = 'build' - -def options(opt): - autowaf.set_options(opt) - -def configure(conf): - autowaf.configure(conf) - -def build(bld): - obj = bld(features = 'cxx cxxshlib') - obj.source = ''' - interface.cc - powermate.cc - ''' - obj.export_includes = ['.'] - obj.cxxflags = '-DPACKAGE="ardour_powermate"' - obj.includes = ['.' ] - obj.name = 'libpowermate' - obj.target = 'powermate' - obj.use = 'libardour libardour_cp' - obj.vnum = LIBARDOUR_POWERMATE_LIB_VERSION - obj.install_path = os.path.join(bld.env['LIBDIR'], 'ardour3', 'surfaces') - -def shutdown(): - autowaf.shutdown() diff --git a/libs/surfaces/wscript b/libs/surfaces/wscript index 20ad07d60f..3a4b562629 100644 --- a/libs/surfaces/wscript +++ b/libs/surfaces/wscript @@ -25,7 +25,6 @@ children = [ 'generic_midi', 'mackie', 'osc', - 'powermate', 'tranzport', 'wiimote' ] @@ -48,7 +47,6 @@ def configure(conf): #if Options.options.tranzport and conf.is_defined('HAVE_USB'): # conf.define('BUILD_TRANZPORT', 1) - conf.check_cc (header_name='linux/input.h', define_name='BUILD_POWERMATE',mandatory=False) autowaf.check_pkg (conf, 'liblo', mandatory=False, uselib_store="LO", atleast_version="0.24") conf.check_cc (header_name='cwiid.h', define_name='HAVE_CWIID_H',mandatory=False) @@ -68,8 +66,6 @@ def build(bld): bld.recurse('mackie') if bld.is_defined ('HAVE_LO'): bld.recurse('osc') - if bld.is_defined('BUILD_POWERMATE'): - bld.recurse('powermate') if bld.is_defined('BUILD_WIIMOTE'): bld.recurse('wiimote') if bld.is_defined('BUILD_TRANZPORT'): From 5aa8e8598c2a5928b6bcc6be05cec99772164eeb Mon Sep 17 00:00:00 2001 From: Adrian Knoth Date: Tue, 19 Mar 2013 23:49:50 +0100 Subject: [PATCH 03/10] Delete *.bak files --- .../rec_enabled/rec_enabled.ardour.bak | 158 -- .../rec_enabled/rec_enabled.history.bak | 2 - .../sessions/1region/1region.ardour.bak | 148 -- .../sessions/1region/1region.history.bak | 2 - .../sessions/32tracks/32tracks.ardour.bak | 1716 ----------------- .../sessions/32tracks/32tracks.history.bak | 2 - 6 files changed, 2028 deletions(-) delete mode 100644 libs/ardour/test/data/sessions/rec_enabled/rec_enabled.ardour.bak delete mode 100644 libs/ardour/test/data/sessions/rec_enabled/rec_enabled.history.bak delete mode 100644 libs/ardour/test/profiling/sessions/1region/1region.ardour.bak delete mode 100644 libs/ardour/test/profiling/sessions/1region/1region.history.bak delete mode 100644 libs/ardour/test/profiling/sessions/32tracks/32tracks.ardour.bak delete mode 100644 libs/ardour/test/profiling/sessions/32tracks/32tracks.history.bak diff --git a/libs/ardour/test/data/sessions/rec_enabled/rec_enabled.ardour.bak b/libs/ardour/test/data/sessions/rec_enabled/rec_enabled.ardour.bak deleted file mode 100644 index 106de1153d..0000000000 --- a/libs/ardour/test/data/sessions/rec_enabled/rec_enabled.ardour.bak +++ /dev/null @@ -1,158 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/libs/ardour/test/data/sessions/rec_enabled/rec_enabled.history.bak b/libs/ardour/test/data/sessions/rec_enabled/rec_enabled.history.bak deleted file mode 100644 index 6dd2506a89..0000000000 --- a/libs/ardour/test/data/sessions/rec_enabled/rec_enabled.history.bak +++ /dev/null @@ -1,2 +0,0 @@ - - diff --git a/libs/ardour/test/profiling/sessions/1region/1region.ardour.bak b/libs/ardour/test/profiling/sessions/1region/1region.ardour.bak deleted file mode 100644 index 4a3e63f351..0000000000 --- a/libs/ardour/test/profiling/sessions/1region/1region.ardour.bak +++ /dev/null @@ -1,148 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/libs/ardour/test/profiling/sessions/1region/1region.history.bak b/libs/ardour/test/profiling/sessions/1region/1region.history.bak deleted file mode 100644 index 6dd2506a89..0000000000 --- a/libs/ardour/test/profiling/sessions/1region/1region.history.bak +++ /dev/null @@ -1,2 +0,0 @@ - - diff --git a/libs/ardour/test/profiling/sessions/32tracks/32tracks.ardour.bak b/libs/ardour/test/profiling/sessions/32tracks/32tracks.ardour.bak deleted file mode 100644 index 6794c67bc9..0000000000 --- a/libs/ardour/test/profiling/sessions/32tracks/32tracks.ardour.bak +++ /dev/null @@ -1,1716 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/libs/ardour/test/profiling/sessions/32tracks/32tracks.history.bak b/libs/ardour/test/profiling/sessions/32tracks/32tracks.history.bak deleted file mode 100644 index 6dd2506a89..0000000000 --- a/libs/ardour/test/profiling/sessions/32tracks/32tracks.history.bak +++ /dev/null @@ -1,2 +0,0 @@ - - From ef1fb4161af256e4a0047315d999531abb6382eb Mon Sep 17 00:00:00 2001 From: Adrian Knoth Date: Mon, 22 Apr 2013 20:16:09 +0200 Subject: [PATCH 04/10] Disable obsolete compilation of libs/pds/dmalloc.cc The file relies on -DDEBUG_MALLOC and references #include "/usr/local/src/dmalloc-4.1.2/return.h" It is safe to assume that it's dead code. --- libs/pbd/wscript | 1 - 1 file changed, 1 deletion(-) diff --git a/libs/pbd/wscript b/libs/pbd/wscript index 4d0c09f410..64dd2a332f 100644 --- a/libs/pbd/wscript +++ b/libs/pbd/wscript @@ -43,7 +43,6 @@ libpbd_sources = [ 'debug.cc', 'enumwriter.cc', 'event_loop.cc', - 'dmalloc.cc', 'enums.cc', 'epa.cc', 'error.cc', From 13ad68c73c9c162c9fc48daab1d2b05ec27a3786 Mon Sep 17 00:00:00 2001 From: Adrian Knoth Date: Mon, 22 Apr 2013 20:15:46 +0200 Subject: [PATCH 05/10] Drop obsolete dmalloc.cc from libs/pbd. The file relies on -DDEBUG_MALLOC and references i #include "/usr/local/src/dmalloc-4.1.2/return.h" It is safe to assume that it's dead code. --- libs/pbd/dmalloc.cc | 102 -------------------------------------------- 1 file changed, 102 deletions(-) delete mode 100644 libs/pbd/dmalloc.cc diff --git a/libs/pbd/dmalloc.cc b/libs/pbd/dmalloc.cc deleted file mode 100644 index 0e730946c8..0000000000 --- a/libs/pbd/dmalloc.cc +++ /dev/null @@ -1,102 +0,0 @@ -/* - * file that facilitates C++ program debugging. - * - * Copyright 1995 by Gray Watson - * - * This file is part of the dmalloc package. - * - * Permission to use, copy, modify, and distribute this software for any - * NON-COMMERCIAL purpose and without fee is hereby granted, provided - * that the above copyright notice and this permission notice appear - * in all copies, and that the name of Gray Watson not be used in - * advertising or publicity pertaining to distribution of the document - * or software without specific, written prior permission. - * - * Please see the PERMISSIONS file or contact the author for information - * about commercial licenses. - * - * Gray Watson makes no representations about the suitability of the - * software described herein for any purpose. It is provided "as is" - * without express or implied warranty. - * - * The author may be contacted via http://www.letters.com/~gray/ - * - * $Id$ - */ - -/* - * This file is used to effectively redirect new to the more familiar - * malloc and delete to the more familiar free so they can be debugged - * with the debug malloc library.. They also give the known error - * behavior, too. - * - * Compile and link this in with the C++ program you want to debug. - * - * NOTE: I am not a C++ hacker so feedback in the form of other hints - * and ideas for C++ users would be much appreciated. - */ - -#ifdef DEBUG_MALLOC - -extern "C" { -#include -#include -#include "/usr/local/src/dmalloc-4.1.2/return.h" -} - -/* - * An overload function for the C++ new. - */ -void * -operator new(size_t size) -{ - char *file; - GET_RET_ADDR(file); - - /* handle correct C++ semantics for an alloc of size 0 */ - - if (size == 0) size = 1; - - return _malloc_leap(file, 0, size); -} - -/* - * An overload function for the C++ new[]. - */ -void * -operator new[](size_t size) -{ - char *file; - GET_RET_ADDR(file); - - /* handle correct C++ semantics for an alloc of size 0 */ - - if (size == 0) size = 1; - - return _malloc_leap(file, 0, size); -} - -/* - * An overload function for the C++ delete. - */ -void -operator delete(void *pnt) -{ - char *file; - GET_RET_ADDR(file); - _free_leap(file, 0, pnt); -} - -/* - * An overload function for the C++ delete[]. Thanks to Jens Krinke - * - */ -void -operator delete[](void *pnt) -{ - char *file; - GET_RET_ADDR(file); - _free_leap(file, 0, pnt); -} - -#endif From 61153f7b87694b394cde528c50673577df3546a3 Mon Sep 17 00:00:00 2001 From: Adrian Knoth Date: Mon, 22 Apr 2013 20:43:02 +0200 Subject: [PATCH 06/10] Drop obsolete gtk2_ardour/canvas-imageframe.c The code is not referenced in the build system anymore. --- gtk2_ardour/canvas-imageframe.c | 586 -------------------------------- 1 file changed, 586 deletions(-) delete mode 100644 gtk2_ardour/canvas-imageframe.c diff --git a/gtk2_ardour/canvas-imageframe.c b/gtk2_ardour/canvas-imageframe.c deleted file mode 100644 index 3654836c79..0000000000 --- a/gtk2_ardour/canvas-imageframe.c +++ /dev/null @@ -1,586 +0,0 @@ -/* Image item type for GnomeCanvas widget - * - * GnomeCanvas is basically a port of the Tk toolkit's most excellent canvas widget. Tk is - * copyrighted by the Regents of the University of California, Sun Microsystems, and other parties. - * - * Copyright (C) 1998 The Free Software Foundation - * - * Author: Federico Mena - */ - - -#include /* for memcpy() */ -#include -#include -#include "libart_lgpl/art_misc.h" -#include "libart_lgpl/art_affine.h" -#include "libart_lgpl/art_pixbuf.h" -#include "libart_lgpl/art_rgb_pixbuf_affine.h" -#include "canvas-imageframe.h" -#include -#include "gettext.h" -#define _(Text) dgettext (PACKAGE,Text) - -//GTK2FIX -//#include - - -enum { - PROP_0, - PROP_PIXBUF, - PROP_X, - PROP_Y, - PROP_WIDTH, - PROP_HEIGHT, - PROP_DRAWWIDTH, - PROP_ANCHOR -}; - - -static void gnome_canvas_imageframe_class_init(GnomeCanvasImageFrameClass* class) ; -static void gnome_canvas_imageframe_init(GnomeCanvasImageFrame* image) ; -static void gnome_canvas_imageframe_destroy(GtkObject* object) ; -static void gnome_canvas_imageframe_set_property(GObject* object, - guint prop_id, - const GValue *value, - GParamSpec *pspec); -static void gnome_canvas_imageframe_get_property(GObject* object, - guint prop_id, - GValue *value, - GParamSpec *pspec); -static void gnome_canvas_imageframe_update(GnomeCanvasItem *item, double *affine, ArtSVP *clip_path, int flags) ; -static void gnome_canvas_imageframe_realize(GnomeCanvasItem *item) ; -static void gnome_canvas_imageframe_unrealize(GnomeCanvasItem *item) ; -static void gnome_canvas_imageframe_draw(GnomeCanvasItem *item, GdkDrawable *drawable, int x, int y, int width, int height) ; -static double gnome_canvas_imageframe_point(GnomeCanvasItem *item, double x, double y, int cx, int cy, GnomeCanvasItem **actual_item) ; -static void gnome_canvas_imageframe_bounds(GnomeCanvasItem *item, double *x1, double *y1, double *x2, double *y2) ; -static void gnome_canvas_imageframe_render(GnomeCanvasItem *item, GnomeCanvasBuf *buf) ; - -static GnomeCanvasItemClass *parent_class; - - -GType -gnome_canvas_imageframe_get_type (void) -{ - static GType imageframe_type = 0; - - if (!imageframe_type) { - GtkTypeInfo imageframe_info = { - "GnomeCanvasImageFrame", - sizeof (GnomeCanvasImageFrame), - sizeof (GnomeCanvasImageFrameClass), - (GtkClassInitFunc) gnome_canvas_imageframe_class_init, - (GtkObjectInitFunc) gnome_canvas_imageframe_init, - NULL, /* reserved_1 */ - NULL, /* reserved_2 */ - (GtkClassInitFunc) NULL - }; - - imageframe_type = gtk_type_unique (gnome_canvas_item_get_type (), &imageframe_info); - } - - return imageframe_type; -} - -static void -gnome_canvas_imageframe_class_init (GnomeCanvasImageFrameClass *class) -{ - GObjectClass *gobject_class; - GtkObjectClass *object_class; - GnomeCanvasItemClass *item_class; - - gobject_class = (GObjectClass *) class; - object_class = (GtkObjectClass *) class; - item_class = (GnomeCanvasItemClass *) class; - - parent_class = gtk_type_class (gnome_canvas_item_get_type ()); - - gobject_class->set_property = gnome_canvas_imageframe_set_property; - gobject_class->get_property = gnome_canvas_imageframe_get_property; - - g_object_class_install_property (gobject_class, - PROP_PIXBUF, - g_param_spec_pointer ("pixbuf", - _("pixbuf"), - _("the pixbuf"), - G_PARAM_WRITABLE)); - g_object_class_install_property (gobject_class, - PROP_X, - g_param_spec_double ("x", - _("x"), - _("x coordinate of upper left corner of rect"), - -G_MAXDOUBLE, - G_MAXDOUBLE, - 0.0, - G_PARAM_READWRITE)); - - g_object_class_install_property (gobject_class, - PROP_Y, - g_param_spec_double ("y", - _("y"), - _("y coordinate of upper left corner of rect "), - -G_MAXDOUBLE, - G_MAXDOUBLE, - 0.0, - G_PARAM_READWRITE)); - g_object_class_install_property (gobject_class, - PROP_WIDTH, - g_param_spec_double ("width", - _("width"), - _("the width"), - -G_MAXDOUBLE, - G_MAXDOUBLE, - 0.0, - G_PARAM_READWRITE)); - - g_object_class_install_property (gobject_class, - PROP_DRAWWIDTH, - g_param_spec_double ("drawwidth", - _("drawwidth"), - _("drawn width"), - -G_MAXDOUBLE, - G_MAXDOUBLE, - 0.0, - G_PARAM_READWRITE)); - g_object_class_install_property (gobject_class, - PROP_HEIGHT, - g_param_spec_double ("height", - _("height"), - _("the height"), - -G_MAXDOUBLE, - G_MAXDOUBLE, - 0.0, - G_PARAM_READWRITE)); - g_object_class_install_property (gobject_class, - PROP_ANCHOR, - g_param_spec_enum ("anchor", - _("anchor"), - _("the anchor"), - GTK_TYPE_ANCHOR_TYPE, - GTK_ANCHOR_NW, - G_PARAM_READWRITE)); - - object_class->destroy = gnome_canvas_imageframe_destroy; - - item_class->update = gnome_canvas_imageframe_update; - item_class->realize = gnome_canvas_imageframe_realize; - item_class->unrealize = gnome_canvas_imageframe_unrealize; - item_class->draw = gnome_canvas_imageframe_draw; - item_class->point = gnome_canvas_imageframe_point; - item_class->bounds = gnome_canvas_imageframe_bounds; - item_class->render = gnome_canvas_imageframe_render; -} - -static void -gnome_canvas_imageframe_init (GnomeCanvasImageFrame *image) -{ - image->x = 0.0; - image->y = 0.0; - image->width = 0.0; - image->height = 0.0; - image->drawwidth = 0.0; - image->anchor = GTK_ANCHOR_CENTER; -} - -static void -gnome_canvas_imageframe_destroy (GtkObject *object) -{ - GnomeCanvasImageFrame *image; - - g_return_if_fail (object != NULL); - g_return_if_fail (GNOME_CANVAS_IS_CANVAS_IMAGEFRAME (object)); - - image = GNOME_CANVAS_IMAGEFRAME (object); - - image->cwidth = 0; - image->cheight = 0; - - if (image->pixbuf) - { - art_pixbuf_free (image->pixbuf); - image->pixbuf = NULL; - } - - if(GTK_OBJECT_CLASS (parent_class)->destroy) - { - (* GTK_OBJECT_CLASS (parent_class)->destroy) (object); - } -} - -/* Get's the image bounds expressed as item-relative coordinates. */ -static void -get_bounds_item_relative (GnomeCanvasImageFrame *image, double *px1, double *py1, double *px2, double *py2) -{ - GnomeCanvasItem *item; - double x, y; - - item = GNOME_CANVAS_ITEM (image); - - /* Get item coordinates */ - - x = image->x; - y = image->y; - - /* Anchor image */ - - switch (image->anchor) { - case GTK_ANCHOR_NW: - case GTK_ANCHOR_W: - case GTK_ANCHOR_SW: - break; - - case GTK_ANCHOR_N: - case GTK_ANCHOR_CENTER: - case GTK_ANCHOR_S: - x -= image->width / 2; - break; - - case GTK_ANCHOR_NE: - case GTK_ANCHOR_E: - case GTK_ANCHOR_SE: - x -= image->width; - break; - } - - switch (image->anchor) { - case GTK_ANCHOR_NW: - case GTK_ANCHOR_N: - case GTK_ANCHOR_NE: - break; - - case GTK_ANCHOR_W: - case GTK_ANCHOR_CENTER: - case GTK_ANCHOR_E: - y -= image->height / 2; - break; - - case GTK_ANCHOR_SW: - case GTK_ANCHOR_S: - case GTK_ANCHOR_SE: - y -= image->height; - break; - } - - /* Bounds */ - - *px1 = x; - *py1 = y; - *px2 = x + image->width; - *py2 = y + image->height; -} - -static void -gnome_canvas_imageframe_set_property (GObject *object, - guint prop_id, - const GValue *value, - GParamSpec *pspec) -{ - GnomeCanvasItem *item; - GnomeCanvasImageFrame *image; - int update; - int calc_bounds; - - item = GNOME_CANVAS_ITEM (object); - image = GNOME_CANVAS_IMAGEFRAME (object); - - update = FALSE; - calc_bounds = FALSE; - - switch (prop_id) { - case PROP_PIXBUF: - if (item->canvas->aa && g_value_get_pointer (value)) { - if (image->pixbuf != NULL) - art_pixbuf_free (image->pixbuf); - image->pixbuf = g_value_get_pointer (value); - } - update = TRUE; - break; - - case PROP_X: - image->x = g_value_get_double (value); - update = TRUE; - break; - - case PROP_Y: - image->y = g_value_get_double (value); - update = TRUE; - break; - - case PROP_WIDTH: - image->width = fabs (g_value_get_double (value)); - update = TRUE; - break; - - case PROP_HEIGHT: - image->height = fabs (g_value_get_double (value)); - update = TRUE; - break; - - case PROP_DRAWWIDTH: - image->drawwidth = fabs (g_value_get_double (value)); - update = TRUE; - break; - - case PROP_ANCHOR: - image->anchor = g_value_get_enum (value); - update = TRUE; - break; - - default: - break; - } - - if (update) - gnome_canvas_item_request_update (item); -} - -static void -gnome_canvas_imageframe_get_property (GObject *object, - guint prop_id, - GValue *value, - GParamSpec *pspec) -{ - GnomeCanvasImageFrame *image; - - image = GNOME_CANVAS_IMAGEFRAME (object); - - switch (prop_id) { - - case PROP_X: - g_value_set_double (value, image->x); - break; - - case PROP_Y: - g_value_set_double (value, image->y); - break; - - case PROP_WIDTH: - g_value_set_double (value, image->width); - break; - - case PROP_HEIGHT: - g_value_set_double (value, image->height); - break; - - case PROP_DRAWWIDTH: - g_value_set_double (value, image->drawwidth); - break; - - case PROP_ANCHOR: - g_value_set_enum (value, image->anchor); - break; - - default: - G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); - break; - } -} - -static void -gnome_canvas_imageframe_update (GnomeCanvasItem *item, double *affine, ArtSVP *clip_path, int flags) -{ - GnomeCanvasImageFrame *image; - ArtDRect i_bbox, c_bbox; - int w = 0; - int h = 0; - - image = GNOME_CANVAS_IMAGEFRAME (item); - - if (parent_class->update) - (* parent_class->update) (item, affine, clip_path, flags); - - /* only works for non-rotated, non-skewed transforms */ - image->cwidth = (int) (image->width * affine[0] + 0.5); - image->cheight = (int) (image->height * affine[3] + 0.5); - - if (image->pixbuf) { - image->need_recalc = TRUE ; - } - - get_bounds_item_relative (image, &i_bbox.x0, &i_bbox.y0, &i_bbox.x1, &i_bbox.y1); - art_drect_affine_transform (&c_bbox, &i_bbox, affine); - - /* these values only make sense in the non-rotated, non-skewed case */ - image->cx = c_bbox.x0; - image->cy = c_bbox.y0; - - /* add a fudge factor */ - c_bbox.x0--; - c_bbox.y0--; - c_bbox.x1++; - c_bbox.y1++; - - gnome_canvas_update_bbox (item, c_bbox.x0, c_bbox.y0, c_bbox.x1, c_bbox.y1); - - if (image->pixbuf) { - w = image->pixbuf->width; - h = image->pixbuf->height; - } - - image->affine[0] = (affine[0] * image->width) / w; - image->affine[1] = (affine[1] * image->height) / h; - image->affine[2] = (affine[2] * image->width) / w; - image->affine[3] = (affine[3] * image->height) / h; - image->affine[4] = i_bbox.x0 * affine[0] + i_bbox.y0 * affine[2] + affine[4]; - image->affine[5] = i_bbox.x0 * affine[1] + i_bbox.y0 * affine[3] + affine[5]; -} - -static void -gnome_canvas_imageframe_realize (GnomeCanvasItem *item) -{ - GnomeCanvasImageFrame *image; - - image = GNOME_CANVAS_IMAGEFRAME (item); - - if (parent_class->realize) - (* parent_class->realize) (item); - -} - -static void -gnome_canvas_imageframe_unrealize (GnomeCanvasItem *item) -{ - GnomeCanvasImageFrame *image; - - image = GNOME_CANVAS_IMAGEFRAME(item); - - if (parent_class->unrealize) - (* parent_class->unrealize) (item); -} - -static void -recalc_if_needed (GnomeCanvasImageFrame *image) -{} - -static void -gnome_canvas_imageframe_draw (GnomeCanvasItem *item, GdkDrawable *drawable, - int x, int y, int width, int height) -{ -} - -static double -gnome_canvas_imageframe_point (GnomeCanvasItem *item, double x, double y, - int cx, int cy, GnomeCanvasItem **actual_item) -{ - GnomeCanvasImageFrame *image; - int x1, y1, x2, y2; - int dx, dy; - - image = GNOME_CANVAS_IMAGEFRAME (item); - - *actual_item = item; - - recalc_if_needed (image); - - x1 = image->cx - item->canvas->close_enough; - y1 = image->cy - item->canvas->close_enough; - x2 = image->cx + image->cwidth - 1 + item->canvas->close_enough; - y2 = image->cy + image->cheight - 1 + item->canvas->close_enough; - - /* Hard case: is point inside image's gravity region? */ - - //if ((cx >= x1) && (cy >= y1) && (cx <= x2) && (cy <= y2)) - //return dist_to_mask (image, cx, cy) / item->canvas->pixels_per_unit; - - /* Point is outside image */ - - x1 += item->canvas->close_enough; - y1 += item->canvas->close_enough; - x2 -= item->canvas->close_enough; - y2 -= item->canvas->close_enough; - - if (cx < x1) - dx = x1 - cx; - else if (cx > x2) - dx = cx - x2; - else - dx = 0; - - if (cy < y1) - dy = y1 - cy; - else if (cy > y2) - dy = cy - y2; - else - dy = 0; - - return sqrt (dx * dx + dy * dy) / item->canvas->pixels_per_unit; -} - -static void -gnome_canvas_imageframe_bounds (GnomeCanvasItem *item, double *x1, double *y1, double *x2, double *y2) -{ - GnomeCanvasImageFrame *image; - - image = GNOME_CANVAS_IMAGEFRAME (item); - - *x1 = image->x; - *y1 = image->y; - - switch (image->anchor) { - case GTK_ANCHOR_NW: - case GTK_ANCHOR_W: - case GTK_ANCHOR_SW: - break; - - case GTK_ANCHOR_N: - case GTK_ANCHOR_CENTER: - case GTK_ANCHOR_S: - *x1 -= image->width / 2.0; - break; - - case GTK_ANCHOR_NE: - case GTK_ANCHOR_E: - case GTK_ANCHOR_SE: - *x1 -= image->width; - break; - } - - switch (image->anchor) { - case GTK_ANCHOR_NW: - case GTK_ANCHOR_N: - case GTK_ANCHOR_NE: - break; - - case GTK_ANCHOR_W: - case GTK_ANCHOR_CENTER: - case GTK_ANCHOR_E: - *y1 -= image->height / 2.0; - break; - - case GTK_ANCHOR_SW: - case GTK_ANCHOR_S: - case GTK_ANCHOR_SE: - *y1 -= image->height; - break; - } - - *x2 = *x1 + image->width; - *y2 = *y1 + image->height; -} - -static void -gnome_canvas_imageframe_render (GnomeCanvasItem *item, GnomeCanvasBuf *buf) -{ - GnomeCanvasImageFrame *image; - - image = GNOME_CANVAS_IMAGEFRAME (item); - - gnome_canvas_buf_ensure_buf (buf); - -#ifdef VERBOSE - { - char str[128]; - art_affine_to_string (str, image->affine); - g_print ("gnome_canvas_imageframe_render %s\n", str); - } -#endif - - art_rgb_pixbuf_affine (buf->buf, - buf->rect.x0, buf->rect.y0, buf->rect.x1, buf->rect.y1, - buf->buf_rowstride, - image->pixbuf, - image->affine, - ART_FILTER_NEAREST, NULL); - - buf->is_bg = 0; -} From 7ca29e7c7572a0a367b12ee39ea70a88388d0372 Mon Sep 17 00:00:00 2001 From: Adrian Knoth Date: Mon, 22 Apr 2013 20:47:52 +0200 Subject: [PATCH 07/10] Add proper GPL license to gtk2_ardour/canvas-imageframe.h Since the file has been part of libgnomecanvas, it is GPL, too. --- gtk2_ardour/canvas-imageframe.h | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/gtk2_ardour/canvas-imageframe.h b/gtk2_ardour/canvas-imageframe.h index 8cfb6e273a..63775dbe3c 100644 --- a/gtk2_ardour/canvas-imageframe.h +++ b/gtk2_ardour/canvas-imageframe.h @@ -4,8 +4,25 @@ * copyrighted by the Regents of the University of California, Sun Microsystems, and other parties. * * Copyright (C) 1998 The Free Software Foundation + * All rights reserved. * * Author: Federico Mena + * + * + * The Gnome Library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public License as + * published by the Free Software Foundation; either version 2 of the + * License, or (at your option) any later version. + * + * The Gnome Library 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 + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with the Gnome Library; see the file COPYING.LIB. If not, + * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, + * Boston, MA 02111-1307, USA. */ From e2d8f25d0c43ff416937640f09fcad2c07787265 Mon Sep 17 00:00:00 2001 From: Adrian Knoth Date: Mon, 22 Apr 2013 20:48:40 +0200 Subject: [PATCH 08/10] Merge important bits from canvas-image.h into imageframe.h --- gtk2_ardour/imageframe.h | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/gtk2_ardour/imageframe.h b/gtk2_ardour/imageframe.h index 466d0804f5..a752cdbce0 100644 --- a/gtk2_ardour/imageframe.h +++ b/gtk2_ardour/imageframe.h @@ -27,10 +27,23 @@ * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +#include #include #include #include -#include "canvas-imageframe.h" + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif +#include +#ifdef __cplusplus +} +#endif + +#include #ifndef DOXYGEN_SHOULD_SKIP_THIS From 7d8ada01d201dbd7c042678986c910e68d87f705 Mon Sep 17 00:00:00 2001 From: Adrian Knoth Date: Mon, 22 Apr 2013 20:48:25 +0200 Subject: [PATCH 09/10] Drop obsolete file canvas-imageframe.h --- gtk2_ardour/canvas-imageframe.h | 104 -------------------------------- 1 file changed, 104 deletions(-) delete mode 100644 gtk2_ardour/canvas-imageframe.h diff --git a/gtk2_ardour/canvas-imageframe.h b/gtk2_ardour/canvas-imageframe.h deleted file mode 100644 index 63775dbe3c..0000000000 --- a/gtk2_ardour/canvas-imageframe.h +++ /dev/null @@ -1,104 +0,0 @@ -/* Image item type for GnomeCanvas widget - * - * GnomeCanvas is basically a port of the Tk toolkit's most excellent canvas widget. Tk is - * copyrighted by the Regents of the University of California, Sun Microsystems, and other parties. - * - * Copyright (C) 1998 The Free Software Foundation - * All rights reserved. - * - * Author: Federico Mena - * - * - * The Gnome Library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public License as - * published by the Free Software Foundation; either version 2 of the - * License, or (at your option) any later version. - * - * The Gnome Library 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 - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public - * License along with the Gnome Library; see the file COPYING.LIB. If not, - * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. - */ - - -#ifndef __GNOME_CANVAS_IMAGEFRAME_H__ -#define __GNOME_CANVAS_IMAGEFRAME_H__ - -#include - -#include -#include - -#ifdef __cplusplus -extern "C" { -#endif -#include -#ifdef __cplusplus -} -#endif - -#include - - -G_BEGIN_DECLS - - -/* Image item for the canvas. Images are positioned by anchoring them to a point. - * The following arguments are available: - * - * name type read/write description - * ------------------------------------------------------------------------------------------ - * pixbuf ArtPixBuf* W Pointer to an ArtPixBuf (aa-mode) - * x double RW X coordinate of anchor point - * y double RW Y coordinate of anchor point - * width double RW Width to scale image to, in canvas units - * height double RW Height to scale image to, in canvas units - * drawwidth double RW Width to scale image to, in canvas units - * anchor GtkAnchorType RW Anchor side for the image - */ - - -#define GNOME_CANVAS_TYPE_CANVAS_IMAGEFRAME (gnome_canvas_imageframe_get_type ()) -#define GNOME_CANVAS_IMAGEFRAME(obj) (GTK_CHECK_CAST ((obj), GNOME_CANVAS_TYPE_CANVAS_IMAGEFRAME, GnomeCanvasImageFrame)) -#define GNOME_CANVAS_IMAGEFRAME_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GNOME_CANVAS_TYPE_CANVAS_IMAGEFRAME, GnomeCanvasImageFrameClass)) -#define GNOME_CANVAS_IS_CANVAS_IMAGEFRAME(obj) (GTK_CHECK_TYPE ((obj), GNOME_CANVAS_TYPE_CANVAS_IMAGEFRAME)) -#define GNOME_CANVAS_IS_CANVAS_IMAGEFRAME_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GNOME_CANVAS_TYPE_CANVAS_IMAGEFRAME)) - - -typedef struct _GnomeCanvasImageFrame GnomeCanvasImageFrame; -typedef struct _GnomeCanvasImageFrameClass GnomeCanvasImageFrameClass; - -struct _GnomeCanvasImageFrame { - GnomeCanvasItem item; - - double x, y; /* Position at anchor, item relative */ - double width, height; /* Size of image, item relative */ - double drawwidth ; /* the amount of the image we draw width-wise (0-drawwidth)*/ - GtkAnchorType anchor; /* Anchor side for image */ - - int cx, cy; /* Top-left canvas coordinates for display */ - int cwidth, cheight; /* Rendered size in pixels */ - - uint32_t need_recalc : 1; /* Do we need to rescale the image? */ - - ArtPixBuf *pixbuf; /* A pixbuf, for aa rendering */ - double affine[6]; /* The item -> canvas affine */ -}; - -struct _GnomeCanvasImageFrameClass { - GnomeCanvasItemClass parent_class; -}; - - -/* Standard Gtk function */ -GtkType gnome_canvas_imageframe_get_type (void); - - -G_END_DECLS - -#endif From 5e2e8e2cae0f807ba071d564d3a74086933afca1 Mon Sep 17 00:00:00 2001 From: Adrian Knoth Date: Mon, 22 Apr 2013 20:50:21 +0200 Subject: [PATCH 10/10] Drop obsolete file gtk2_ardour/imageframe.cc --- gtk2_ardour/imageframe.cc | 190 -------------------------------------- 1 file changed, 190 deletions(-) delete mode 100644 gtk2_ardour/imageframe.cc diff --git a/gtk2_ardour/imageframe.cc b/gtk2_ardour/imageframe.cc deleted file mode 100644 index ac30511864..0000000000 --- a/gtk2_ardour/imageframe.cc +++ /dev/null @@ -1,190 +0,0 @@ -// Generated by gtkmmproc -- DO NOT MODIFY! - -#include "imageframe.h" -#include "imageframe_p.h" -#include - - -/* rect.c - * - * Copyright (C) 1998 EMC Capital Management Inc. - * Developed by Havoc Pennington - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Library General Public - * License as published by the Free Software Foundation; either - * version 2 of the License, or (at your option) any later version. - * - * This library 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 - * Library General Public License for more details. - * - * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the Free - * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - */ - -namespace Gnome -{ - -namespace Canvas -{ - -ImageFrame::ImageFrame(Group& parentx, ArtPixBuf* pbuf, double x, double y, Gtk::AnchorType anchor, double w, double h) -: Item(GNOME_CANVAS_ITEM(g_object_new(get_type(),0))) -{ - item_construct(parentx); - set("pixbuf", pbuf, "x", x,"y", y,"width", w,"height", h, 0); -} - -ImageFrame::ImageFrame(Group& parentx) -: Item(GNOME_CANVAS_ITEM(g_object_new(get_type(),0))) -{ - item_construct(parentx); -} - -} /* namespace Canvas */ -} /* namespace Gnome */ - - -namespace -{ -} // anonymous namespace - - -namespace Glib -{ - -Gnome::Canvas::ImageFrame* wrap(GnomeCanvasImageFrame* object, bool take_copy) -{ - return dynamic_cast (Glib::wrap_auto ((GObject*)(object), take_copy)); -} - -} /* namespace Glib */ - -namespace Gnome -{ - -namespace Canvas -{ - - -/* The *_Class implementation: */ - -const Glib::Class& ImageFrame_Class::init() -{ - if(!gtype_) // create the GType if necessary - { - // Glib::Class has to know the class init function to clone custom types. - class_init_func_ = &ImageFrame_Class::class_init_function; - - // This is actually just optimized away, apparently with no harm. - // Make sure that the parent type has been created. - //CppClassParent::CppObjectType::get_type(); - - // Create the wrapper type, with the same class/instance size as the base type. - register_derived_type(gnome_canvas_imageframe_get_type()); - - // Add derived versions of interfaces, if the C type implements any interfaces: - } - - return *this; -} - -void ImageFrame_Class::class_init_function(void* g_class, void* class_data) -{ - BaseClassType *const klass = static_cast(g_class); - CppClassParent::class_init_function(klass, class_data); - -} - -Glib::ObjectBase* ImageFrame_Class::wrap_new(GObject* o) -{ - return manage(new ImageFrame((GnomeCanvasImageFrame*)(o))); - -} - -/* The implementation: */ - -ImageFrame::ImageFrame(const Glib::ConstructParams& construct_params) -: Item(construct_params) -{ - } - -ImageFrame::ImageFrame(GnomeCanvasImageFrame* castitem) -: Item ((GnomeCanvasItem*)(castitem)) -{ -} - -ImageFrame::~ImageFrame() -{ - destroy_(); -} - -ImageFrame::CppClassType ImageFrame::rect_class_; // initialize static member - -GType ImageFrame::get_type() -{ - return rect_class_.init().get_type(); -} - -GType ImageFrame::get_base_type() -{ - return gnome_canvas_imageframe_get_type(); -} - -Glib::PropertyProxy ImageFrame::property_x() -{ - return Glib::PropertyProxy (this, "x"); -} -Glib::PropertyProxy_ReadOnly ImageFrame::property_x() const -{ - return Glib::PropertyProxy_ReadOnly (this, "x"); -} -Glib::PropertyProxy ImageFrame::property_y() -{ - return Glib::PropertyProxy (this, "y"); -} -Glib::PropertyProxy_ReadOnly ImageFrame::property_y() const -{ - return Glib::PropertyProxy_ReadOnly (this, "y"); -} -Glib::PropertyProxy ImageFrame::property_width() -{ - return Glib::PropertyProxy (this, "width"); -} -Glib::PropertyProxy_ReadOnly ImageFrame::property_width() const -{ - return Glib::PropertyProxy_ReadOnly (this, "width"); -} -Glib::PropertyProxy ImageFrame::property_drawwidth() -{ - return Glib::PropertyProxy (this, "drawwidth"); -} -Glib::PropertyProxy_ReadOnly ImageFrame::property_drawwidth() const -{ - return Glib::PropertyProxy_ReadOnly (this, "drawwidth"); -} -Glib::PropertyProxy ImageFrame::property_height() -{ - return Glib::PropertyProxy (this, "height"); -} -Glib::PropertyProxy_ReadOnly ImageFrame::property_height() const -{ - return Glib::PropertyProxy_ReadOnly (this, "height"); -} -Glib::PropertyProxy ImageFrame::property_anchor() -{ - return Glib::PropertyProxy(this, "anchor"); -} -Glib::PropertyProxy_ReadOnly ImageFrame::property_anchor() const -{ - return Glib::PropertyProxy_ReadOnly(this, "anchor"); -} - - - -} // namespace Canvas - -} // namespace Gnome