Still need to add API export/visibility macros for the canvas library.
transport_tearoff_hbox.pack_start (editor_meter_peak_display, false, false);
meter_box.show();
editor_meter_peak_display.show();
- } else if (meter_box.get_parent()) {
- transport_tearoff_hbox.remove (meter_box);
- transport_tearoff_hbox.remove (editor_meter_peak_display);
}
- }
+ }
}
int
'libardour_cp',
'libtimecode',
'libmidipp',
- 'libgtk2_ardour',
'libgtkmm2ext',
+ 'libcanvas',
]
- # continue with setup of obj, which could be a shared library
- # or an executable.
-
- obj.install_path = os.path.join(bld.env['LIBDIR'], 'ardour3')
- obj.uselib = 'UUID FLAC FONTCONFIG GLIBMM GTHREAD GTK OGG CURL DL'
- obj.uselib += ' GTKMM GNOMECANVASMM GNOMECANVAS FFTW3F'
- obj.uselib += ' AUDIOUNITS OSX GTKOSX LO '
- if bld.is_defined('USE_EXTERNAL_LIBS'):
- obj.uselib += ' TAGLIB'
- else:
- obj.use.append('libtaglib')
- if sys.platform == 'darwin':
- obj.use += ' libappleutility'
- obj.defines += [
++ obj.defines = [
+ 'PACKAGE="' + I18N_PACKAGE + '"',
+ 'VERSIONSTRING="' + bld.env['VERSION'] + '"',
+ 'DATA_DIR="' + os.path.normpath(bld.env['DATADIR']) + '"',
+ 'CONFIG_DIR="' + os.path.normpath(bld.env['SYSCONFDIR']) + '"',
+ 'LOCALEDIR="' + os.path.join(os.path.normpath(bld.env['DATADIR']), 'locale') + '"',
+ 'PROGRAM_NAME="' + bld.env['PROGRAM_NAME'] + '"'
+ ]
+ obj.install_path = os.path.join(bld.env['LIBDIR'], 'ardour3')
+ obj.uselib = 'UUID FLAC FONTCONFIG GLIBMM GTHREAD GTK OGG CURL DL'
- obj.uselib += ' GTKMM GNOMECANVASMM GNOMECANVAS FFTW3F'
++ obj.uselib += ' GTKMM CANVAS FFTW3F'
+ obj.uselib += ' AUDIOUNITS OSX GTKOSX LO '
+
+ if bld.is_defined('USE_EXTERNAL_LIBS'):
+ obj.uselib += ' TAGLIB'
+ else:
+ obj.use += ('libtaglib')
+ if sys.platform == 'darwin':
+ obj.uselib += ' AUDIOUNITS OSX GTKOSX'
+ obj.use += ' libappleutility'
- obj.defines = [
- 'PACKAGE="' + I18N_PACKAGE + '"',
- 'VERSIONSTRING="' + bld.env['VERSION'] + '"',
- 'DATA_DIR="' + os.path.normpath(bld.env['DATADIR']) + '"',
- 'CONFIG_DIR="' + os.path.normpath(bld.env['SYSCONFDIR']) + '"',
- 'LOCALEDIR="' + os.path.join(os.path.normpath(bld.env['DATADIR']), 'locale') + '"',
- 'PROGRAM_NAME="' + bld.env['PROGRAM_NAME'] + '"'
- ]
obj.includes += ['../libs']
if bld.is_defined('HAVE_SUIL'):
};
/// We need this wrapper for testability, it's just too hard to mock up a session class
- class ISlaveSessionProxy {
+ class LIBARDOUR_API ISlaveSessionProxy {
public:
virtual ~ISlaveSessionProxy() {}
- virtual TempoMap& tempo_map() const { return *((TempoMap *) 0); }
- virtual framecnt_t frame_rate() const { return 0; }
- virtual framepos_t audible_frame () const { return 0; }
- virtual framepos_t transport_frame () const { return 0; }
- virtual pframes_t frames_since_cycle_start () const { return 0; }
- virtual framepos_t frame_time () const { return 0; }
+ virtual TempoMap& tempo_map() const { return *((TempoMap *) 0); }
+ virtual framecnt_t frame_rate() const { return 0; }
+ virtual pframes_t frames_per_cycle() const { return 0; }
+ virtual framepos_t audible_frame () const { return 0; }
+ virtual framepos_t transport_frame () const { return 0; }
+ virtual pframes_t frames_since_cycle_start () const { return 0; }
+ virtual pframes_t sample_time_at_cycle_start() const { return 0; }
+ virtual framepos_t frame_time () const { return 0; }
virtual void request_locate (framepos_t /*frame*/, bool with_roll = false) {
(void) with_roll;
return (x);
}
- std::string bump_name_once(const std::string& s, char delimiter);
+ LIBARDOUR_API std::string bump_name_once(const std::string& s, char delimiter);
- int cmp_nocase (const std::string& s, const std::string& s2);
- int cmp_nocase_utf8 (const std::string& s1, const std::string& s2);
+ LIBARDOUR_API int cmp_nocase (const std::string& s, const std::string& s2);
++LIBARDOUR_API int cmp_nocase_utf8 (const std::string& s1, const std::string& s2);
- int touch_file(std::string path);
+ LIBARDOUR_API int touch_file(std::string path);
- std::string region_name_from_path (std::string path, bool strip_channels, bool add_channel_suffix = false, uint32_t total = 0, uint32_t this_one = 0);
- bool path_is_paired (std::string path, std::string& pair_base);
+ LIBARDOUR_API std::string region_name_from_path (std::string path, bool strip_channels, bool add_channel_suffix = false, uint32_t total = 0, uint32_t this_one = 0);
+ LIBARDOUR_API bool path_is_paired (std::string path, std::string& pair_base);
- void compute_equal_power_fades (ARDOUR::framecnt_t nframes, float* in, float* out);
+ LIBARDOUR_API void compute_equal_power_fades (ARDOUR::framecnt_t nframes, float* in, float* out);
- const char* sync_source_to_string (ARDOUR::SyncSource src, bool sh = false);
- ARDOUR::SyncSource string_to_sync_source (std::string str);
+ LIBARDOUR_API const char* sync_source_to_string (ARDOUR::SyncSource src, bool sh = false);
+ LIBARDOUR_API ARDOUR::SyncSource string_to_sync_source (std::string str);
- const char* edit_mode_to_string (ARDOUR::EditMode);
- ARDOUR::EditMode string_to_edit_mode (std::string);
+ LIBARDOUR_API const char* edit_mode_to_string (ARDOUR::EditMode);
+ LIBARDOUR_API ARDOUR::EditMode string_to_edit_mode (std::string);
#undef OLD_GAIN_MATH
#define OLD_GAIN_MATH
#include <gtkmm/treeview.h>
#include <gdkmm/window.h> /* for WMDecoration */
#include <gdkmm/pixbuf.h>
-#include <pangomm/fontdescription.h>
+ #include "gtkmm2ext/visibility.h"
+
namespace Cairo {
class Context;
}
/* C API for rounded rectangles */
- void rounded_rectangle (cairo_t*, double x, double y, double w, double h, double r=10);
- void rounded_top_rectangle (cairo_t*, double x, double y, double w, double h, double r=10);
- void rounded_top_left_rectangle (cairo_t*, double x, double y, double w, double h, double r=10);
- void rounded_top_right_rectangle (cairo_t*, double x, double y, double w, double h, double r=10);
- void rounded_top_half_rectangle (cairo_t*, double x, double y, double w, double h, double r=10);
- void rounded_bottom_half_rectangle (cairo_t*, double x, double y, double w, double h, double r=10);
- void rounded_right_half_rectangle (cairo_t*, double x, double y, double w, double h, double r=10);
+ LIBGTKMM2EXT_API void rounded_rectangle (cairo_t*, double x, double y, double w, double h, double r=10);
+ LIBGTKMM2EXT_API void rounded_top_rectangle (cairo_t*, double x, double y, double w, double h, double r=10);
+ LIBGTKMM2EXT_API void rounded_top_left_rectangle (cairo_t*, double x, double y, double w, double h, double r=10);
+ LIBGTKMM2EXT_API void rounded_top_right_rectangle (cairo_t*, double x, double y, double w, double h, double r=10);
+ LIBGTKMM2EXT_API void rounded_top_half_rectangle (cairo_t*, double x, double y, double w, double h, double r=10);
+ LIBGTKMM2EXT_API void rounded_bottom_half_rectangle (cairo_t*, double x, double y, double w, double h, double r=10);
+ LIBGTKMM2EXT_API void rounded_right_half_rectangle (cairo_t*, double x, double y, double w, double h, double r=10);
- Gtk::Label* left_aligned_label (std::string const &);
+ LIBGTKMM2EXT_API Gtk::Label* left_aligned_label (std::string const &);
- void set_no_tooltip_whatsoever (Gtk::Widget &);
- void enable_tooltips ();
- void disable_tooltips ();
+ LIBGTKMM2EXT_API void set_no_tooltip_whatsoever (Gtk::Widget &);
+ LIBGTKMM2EXT_API void enable_tooltips ();
+ LIBGTKMM2EXT_API void disable_tooltips ();
+
- void convert_bgra_to_rgba (guint8 const *, guint8 * dst, int, int);
++ LIBGTKMM2EXT_API void convert_bgra_to_rgba (guint8 const *, guint8 * dst, int, int);
};
#endif /* __gtkmm2ext_utils_h__ */
#include <cstdlib>
#endif
+ #include "pbd/libpbd_visibility.h"
+
+
namespace PBD {
- void stacktrace (std::ostream& out, int levels = 0);
- void trace_twb();
- std::string demangle (const std::string&);
++
+ LIBPBD_API void stacktrace (std::ostream& out, int levels = 0);
+ LIBPBD_API void trace_twb();
++ LIBPBD_API std::string demangle (const std::string&);
template<typename T>
- class thing_with_backtrace
+ class LIBPBD_API thing_with_backtrace
{
public:
thing_with_backtrace () {
obj.includes = ['.', './control_protocol']
obj.name = 'libardour_cp'
obj.target = 'ardourcp'
- obj.use = 'libardour libtimecode'
- obj.use = 'ardour'
++ obj.use = 'libardour'
obj.vnum = LIBARDOUR_CP_LIB_VERSION
obj.install_path = os.path.join(bld.env['LIBDIR'], 'ardour3')