summaryrefslogtreecommitdiff
path: root/gtk2_ardour
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2006-10-11 19:50:15 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2006-10-11 19:50:15 +0000
commit360a903069c7a0dd5e792312ec0eb8921a2aa49d (patch)
treeef92987f0c3190c4df451e2303abf2d9ac5f995c /gtk2_ardour
parent7cdca2efdb14e94e71545f646761db604cfd08c8 (diff)
make MementoCommand inherit from sigc::trackable so that we don't double-call its object-going-away handler; make big clock float ; do not use shared_ptr<T> in session region signalhandlers, just weak_ptr<T>
git-svn-id: svn://localhost/ardour2/trunk@976 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour')
-rw-r--r--gtk2_ardour/ardour_ui2.cc17
-rw-r--r--gtk2_ardour/ardour_ui_ed.cc27
-rw-r--r--gtk2_ardour/automation_line.h2
3 files changed, 27 insertions, 19 deletions
diff --git a/gtk2_ardour/ardour_ui2.cc b/gtk2_ardour/ardour_ui2.cc
index 9a964fe519..ed7c4951e1 100644
--- a/gtk2_ardour/ardour_ui2.cc
+++ b/gtk2_ardour/ardour_ui2.cc
@@ -452,23 +452,6 @@ ARDOUR_UI::setup_transport ()
}
void
-ARDOUR_UI::setup_clock ()
-{
- ARDOUR_UI::Clock.connect (bind (mem_fun (big_clock, &AudioClock::set), false));
-
- big_clock_window = new Window (WINDOW_TOPLEVEL);
-
- big_clock_window->set_border_width (0);
- big_clock_window->add (big_clock);
- big_clock_window->set_title (_("ardour: clock"));
- big_clock_window->set_type_hint (Gdk::WINDOW_TYPE_HINT_MENU);
- big_clock_window->signal_realize().connect (bind (sigc::ptr_fun (set_decoration), big_clock_window, (Gdk::DECOR_BORDER|Gdk::DECOR_RESIZEH)));
- big_clock_window->signal_unmap().connect (bind (sigc::ptr_fun(&ActionManager::uncheck_toggleaction), X_("<Actions>/Common/ToggleBigClock")));
-
- manage_window (*big_clock_window);
-}
-
-void
ARDOUR_UI::manage_window (Window& win)
{
win.signal_delete_event().connect (bind (sigc::ptr_fun (just_hide_it), &win));
diff --git a/gtk2_ardour/ardour_ui_ed.cc b/gtk2_ardour/ardour_ui_ed.cc
index eebe33bf58..d7c294c681 100644
--- a/gtk2_ardour/ardour_ui_ed.cc
+++ b/gtk2_ardour/ardour_ui_ed.cc
@@ -26,6 +26,8 @@
#include <pbd/pathscanner.h>
+#include <gtkmm2ext/utils.h>
+
#include "ardour_ui.h"
#include "public_editor.h"
#include "audio_clock.h"
@@ -39,10 +41,12 @@
#include "i18n.h"
+using namespace std;
using namespace ARDOUR;
using namespace PBD;
-using namespace Gtk;
using namespace Gtkmm2ext;
+using namespace Gtk;
+using namespace Glib;
using namespace sigc;
int
@@ -558,3 +562,24 @@ ARDOUR_UI::build_menu_bar ()
menu_bar_base.set_name ("MainMenuBar");
menu_bar_base.add (menu_hbox);
}
+
+void
+ARDOUR_UI::setup_clock ()
+{
+ ARDOUR_UI::Clock.connect (bind (mem_fun (big_clock, &AudioClock::set), false));
+
+ big_clock_window = new Window (WINDOW_TOPLEVEL);
+
+ big_clock_window->set_border_width (0);
+ big_clock_window->add (big_clock);
+ big_clock_window->set_title (_("ardour: clock"));
+ big_clock_window->set_type_hint (Gdk::WINDOW_TYPE_HINT_MENU);
+ big_clock_window->signal_realize().connect (bind (sigc::ptr_fun (set_decoration), big_clock_window, (Gdk::DECOR_BORDER|Gdk::DECOR_RESIZEH)));
+ big_clock_window->signal_unmap().connect (bind (sigc::ptr_fun(&ActionManager::uncheck_toggleaction), X_("<Actions>/Common/ToggleBigClock")));
+
+ if (editor) {
+ editor->ensure_float (*big_clock_window);
+ }
+
+ manage_window (*big_clock_window);
+}
diff --git a/gtk2_ardour/automation_line.h b/gtk2_ardour/automation_line.h
index 52193ecc4c..eb2d204513 100644
--- a/gtk2_ardour/automation_line.h
+++ b/gtk2_ardour/automation_line.h
@@ -96,7 +96,7 @@ class ControlPoint
ShapeType _shape;
};
-class AutomationLine : public sigc::trackable, public PBD::StatefulDestructible
+class AutomationLine : public PBD::StatefulDestructible
{
public:
AutomationLine (const string & name, TimeAxisView&, ArdourCanvas::Group&, ARDOUR::AutomationList&);