ardour
Classes | Public Member Functions | Static Public Member Functions | Public Attributes | Protected Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | Static Private Attributes | List of all members
Gtkmm2ext::UI Class Referenceabstract

#include <gtk_ui.h>

Inheritance diagram for Gtkmm2ext::UI:
AbstractUI< UIRequest > BaseUI PBD::EventLoop ARDOUR_UI

Classes

class  MyReceiver
 

Public Member Functions

 UI (std::string name, int *argc, char **argv[])
 
virtual ~UI ()
 
void receive (Transmitter::Channel, const char *)
 
bool caller_is_ui_thread ()
 
bool running ()
 
void quit ()
 
int load_rcfile (std::string, bool themechange=false)
 
void run (Receiver &old_receiver)
 
void set_state (Gtk::Widget *w, Gtk::StateType state)
 
void popup_error (const std::string &text)
 
void flush_pending ()
 
void toggle_errors ()
 
void show_errors ()
 
void touch_display (Touchable *)
 
void set_tip (Gtk::Widget &w, const gchar *tip)
 
void set_tip (Gtk::Widget &w, const std::string &tip)
 
void set_tip (Gtk::Widget *w, const gchar *tip, const gchar *hlp="")
 
void idle_add (int(*func)(void *), void *arg)
 
Gtk::Main & main () const
 
template<class T >
void delete_in_self (T *obj)
 
Gdk::Color get_color (const std::string &prompt, bool &picked, const Gdk::Color *initial=0)
 
virtual int starting ()=0
 
- Public Member Functions inherited from AbstractUI< UIRequest >
 AbstractUI (const std::string &name)
 
virtual ~AbstractUI ()
 
void register_thread (std::string, pthread_t, std::string, uint32_t num_requests)
 
void call_slot (EventLoop::InvalidationRecord *, const boost::function< void()> &)
 
Glib::Threads::Mutex & slot_invalidation_mutex ()
 
- Public Member Functions inherited from BaseUI
 BaseUI (const std::string &name)
 
virtual ~BaseUI ()
 
BaseUIbase_instance ()
 
Glib::RefPtr< Glib::MainLoop > main_loop () const
 
Glib::Threads::Thread * event_loop_thread () const
 
bool caller_is_self () const
 
std::string name () const
 
bool ok () const
 
void run ()
 
void quit ()
 
- Public Member Functions inherited from PBD::EventLoop
 EventLoop ()
 
virtual ~EventLoop ()
 
virtual void call_slot (InvalidationRecord *, const boost::function< void()> &)=0
 

Static Public Member Functions

static UIinstance ()
 
template<class T >
static bool idle_delete (T *obj)
 
template<class T >
static void delete_when_idle (T *obj)
 
static bool just_hide_it (GdkEventAny *, Gtk::Window *)
 
- Static Public Member Functions inherited from BaseUI
static RequestType new_request_type ()
 
- Static Public Member Functions inherited from PBD::EventLoop
static void * invalidate_request (void *data)
 
static EventLoopget_event_loop_for_thread ()
 
static void set_event_loop_for_thread (EventLoop *ui)
 

Public Attributes

sigc::signal< void > theme_changed
 
- Public Attributes inherited from AbstractUI< UIRequest >
Glib::Threads::Mutex request_buffer_map_lock
 

Protected Member Functions

virtual void handle_fatal (const char *)
 
virtual void display_message (const char *prefix, gint prefix_len, Glib::RefPtr< Gtk::TextBuffer::Tag > ptag, Glib::RefPtr< Gtk::TextBuffer::Tag > mtag, const char *msg)
 
- Protected Member Functions inherited from AbstractUI< UIRequest >
UIRequest * get_request (RequestType)
 
void handle_ui_requests ()
 
void send_request (UIRequest *)
 
virtual void do_request (UIRequest *)=0
 
- Protected Member Functions inherited from BaseUI
bool signal_running ()
 
virtual void thread_init ()
 
bool request_handler (Glib::IOCondition)
 
void signal_new_request ()
 
void attach_request_source ()
 

Private Member Functions

void process_error_message (Transmitter::Channel, const char *)
 
void do_quit ()
 
void color_selection_done (bool status)
 
bool color_selection_deleted (GdkEventAny *)
 
void do_request (UIRequest *)
 

Static Private Member Functions

static void signal_pipe_callback (void *, gint, GdkInputCondition)
 

Private Attributes

MyReceiver _receiver
 
bool _active
 
Gtk::Main * theMain
 
Gtk::Tooltips * tips
 
TextViewererrors
 
Glib::RefPtr
< Gtk::TextBuffer::Tag > 
error_ptag
 
Glib::RefPtr
< Gtk::TextBuffer::Tag > 
error_mtag
 
Glib::RefPtr
< Gtk::TextBuffer::Tag > 
fatal_ptag
 
Glib::RefPtr
< Gtk::TextBuffer::Tag > 
fatal_mtag
 
Glib::RefPtr
< Gtk::TextBuffer::Tag > 
info_ptag
 
Glib::RefPtr
< Gtk::TextBuffer::Tag > 
info_mtag
 
Glib::RefPtr
< Gtk::TextBuffer::Tag > 
warning_ptag
 
Glib::RefPtr
< Gtk::TextBuffer::Tag > 
warning_mtag
 
bool color_picked
 

Static Private Attributes

static UItheGtkUI = 0
 

Additional Inherited Members

- Public Types inherited from PBD::EventLoop
enum  RequestType { range_guarantee = ~0 }
 
- Static Public Attributes inherited from BaseUI
static RequestType CallSlot = BaseUI::new_request_type()
 
static RequestType Quit = BaseUI::new_request_type()
 
- Protected Types inherited from AbstractUI< UIRequest >
typedef RequestBuffer::rw_vector RequestBufferVector
 
typedef std::map< pthread_t,
RequestBuffer * >::iterator 
RequestBufferMapIterator
 
typedef std::map< pthread_t,
RequestBuffer * > 
RequestBufferMap
 
- Protected Attributes inherited from AbstractUI< UIRequest >
RequestBufferMap request_buffers
 
Glib::Threads::Mutex request_list_lock
 
std::list< UIRequest * > request_list
 
PBD::ScopedConnection new_thread_connection
 
- Protected Attributes inherited from BaseUI
bool _ok
 
Glib::RefPtr< Glib::MainLoop > _main_loop
 
Glib::RefPtr< Glib::MainContext > m_context
 
Glib::Threads::Thread * run_loop_thread
 
Glib::Threads::Mutex _run_lock
 
Glib::Threads::Cond _running
 
- Static Protected Attributes inherited from AbstractUI< UIRequest >
static Glib::Threads::Private
< RequestBuffer > 
per_thread_request_buffer
 

Detailed Description

Definition at line 100 of file gtk_ui.h.

Constructor & Destructor Documentation

UI::UI ( std::string  name,
int *  argc,
char **  argv[] 
)

Definition at line 70 of file gtk_ui.cc.

UI::~UI ( )
virtual

Definition at line 127 of file gtk_ui.cc.

Member Function Documentation

bool UI::caller_is_ui_thread ( )

Definition at line 134 of file gtk_ui.cc.

bool UI::color_selection_deleted ( GdkEventAny *  )
private

Definition at line 747 of file gtk_ui.cc.

void UI::color_selection_done ( bool  status)
private

Definition at line 740 of file gtk_ui.cc.

template<class T >
void Gtkmm2ext::UI::delete_in_self ( T *  obj)
inline

Definition at line 154 of file gtk_ui.h.

template<class T >
static void Gtkmm2ext::UI::delete_when_idle ( T *  obj)
inlinestatic

Definition at line 150 of file gtk_ui.h.

void UI::display_message ( const char *  prefix,
gint  prefix_len,
Glib::RefPtr< Gtk::TextBuffer::Tag >  ptag,
Glib::RefPtr< Gtk::TextBuffer::Tag >  mtag,
const char *  msg 
)
protectedvirtual

Reimplemented in ARDOUR_UI.

Definition at line 622 of file gtk_ui.cc.

void UI::do_quit ( )
private

Definition at line 311 of file gtk_ui.cc.

void UI::do_request ( UIRequest req)
private

Definition at line 437 of file gtk_ui.cc.

void UI::flush_pending ( )

Definition at line 681 of file gtk_ui.cc.

Gdk::Color UI::get_color ( const std::string &  prompt,
bool &  picked,
const Gdk::Color *  initial = 0 
)

Definition at line 704 of file gtk_ui.cc.

void UI::handle_fatal ( const char *  message)
protectedvirtual

Definition at line 634 of file gtk_ui.cc.

void UI::idle_add ( int(*)(void *)  func,
void *  arg 
)

Definition at line 403 of file gtk_ui.cc.

template<class T >
static bool Gtkmm2ext::UI::idle_delete ( T *  obj)
inlinestatic

Definition at line 149 of file gtk_ui.h.

static UI* Gtkmm2ext::UI::instance ( )
inlinestatic

Definition at line 119 of file gtk_ui.h.

bool UI::just_hide_it ( GdkEventAny *  ,
Gtk::Window *  win 
)
static

Definition at line 697 of file gtk_ui.cc.

int UI::load_rcfile ( std::string  ,
bool  themechange = false 
)

Definition at line 140 of file gtk_ui.cc.

Gtk::Main& Gtkmm2ext::UI::main ( ) const
inline

Definition at line 147 of file gtk_ui.h.

void UI::popup_error ( const std::string &  text)

Definition at line 665 of file gtk_ui.cc.

void UI::process_error_message ( Transmitter::Channel  chn,
const char *  str 
)
private

Definition at line 506 of file gtk_ui.cc.

void UI::quit ( )

Definition at line 293 of file gtk_ui.cc.

void UI::receive ( Transmitter::Channel  chn,
const char *  str 
)

Definition at line 485 of file gtk_ui.cc.

void UI::run ( Receiver old_receiver)

Definition at line 264 of file gtk_ui.cc.

bool UI::running ( )

Definition at line 287 of file gtk_ui.cc.

void UI::set_state ( Gtk::Widget *  w,
Gtk::StateType  state 
)

Definition at line 388 of file gtk_ui.cc.

void Gtkmm2ext::UI::set_tip ( Gtk::Widget &  w,
const gchar *  tip 
)
void Gtkmm2ext::UI::set_tip ( Gtk::Widget &  w,
const std::string &  tip 
)
void Gtkmm2ext::UI::set_tip ( Gtk::Widget *  w,
const gchar *  tip,
const gchar *  hlp = "" 
)
void UI::show_errors ( )

Definition at line 590 of file gtk_ui.cc.

static void Gtkmm2ext::UI::signal_pipe_callback ( void *  ,
gint  ,
GdkInputCondition   
)
staticprivate
virtual int Gtkmm2ext::UI::starting ( )
pure virtual

Implemented in ARDOUR_UI.

void UI::toggle_errors ( )

Definition at line 604 of file gtk_ui.cc.

void UI::touch_display ( Touchable display)

Definition at line 321 of file gtk_ui.cc.

Member Data Documentation

bool Gtkmm2ext::UI::_active
private

Definition at line 179 of file gtk_ui.h.

MyReceiver Gtkmm2ext::UI::_receiver
private

Definition at line 113 of file gtk_ui.h.

bool Gtkmm2ext::UI::color_picked
private

Definition at line 200 of file gtk_ui.h.

Glib::RefPtr<Gtk::TextBuffer::Tag> Gtkmm2ext::UI::error_mtag
private

Definition at line 186 of file gtk_ui.h.

Glib::RefPtr<Gtk::TextBuffer::Tag> Gtkmm2ext::UI::error_ptag
private

Definition at line 185 of file gtk_ui.h.

TextViewer* Gtkmm2ext::UI::errors
private

Definition at line 184 of file gtk_ui.h.

Glib::RefPtr<Gtk::TextBuffer::Tag> Gtkmm2ext::UI::fatal_mtag
private

Definition at line 188 of file gtk_ui.h.

Glib::RefPtr<Gtk::TextBuffer::Tag> Gtkmm2ext::UI::fatal_ptag
private

Definition at line 187 of file gtk_ui.h.

Glib::RefPtr<Gtk::TextBuffer::Tag> Gtkmm2ext::UI::info_mtag
private

Definition at line 190 of file gtk_ui.h.

Glib::RefPtr<Gtk::TextBuffer::Tag> Gtkmm2ext::UI::info_ptag
private

Definition at line 189 of file gtk_ui.h.

UI * UI::theGtkUI = 0
staticprivate

Definition at line 177 of file gtk_ui.h.

Gtk::Main* Gtkmm2ext::UI::theMain
private

Definition at line 180 of file gtk_ui.h.

sigc::signal<void> Gtkmm2ext::UI::theme_changed

Definition at line 166 of file gtk_ui.h.

Gtk::Tooltips* Gtkmm2ext::UI::tips
private

Definition at line 182 of file gtk_ui.h.

Glib::RefPtr<Gtk::TextBuffer::Tag> Gtkmm2ext::UI::warning_mtag
private

Definition at line 192 of file gtk_ui.h.

Glib::RefPtr<Gtk::TextBuffer::Tag> Gtkmm2ext::UI::warning_ptag
private

Definition at line 191 of file gtk_ui.h.


The documentation for this class was generated from the following files: