/[svn]/gigedit/trunk/src/gigedit/gigedit.cpp
ViewVC logotype

Diff of /gigedit/trunk/src/gigedit/gigedit.cpp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1656 by schoenebeck, Sat Feb 2 08:18:19 2008 UTC revision 1898 by persson, Sun May 10 09:35:56 2009 UTC
# Line 1  Line 1 
1  /*  /*
2   * Copyright (C) 2007, 2008 Andreas Persson   * Copyright (C) 2007-2009 Andreas Persson
3   *   *
4   * This program is free software; you can redistribute it and/or   * This program is free software; you can redistribute it and/or
5   * modify it under the terms of the GNU General Public License as   * modify it under the terms of the GNU General Public License as
# Line 79  private: Line 79  private:
79      void close_window();      void close_window();
80  };  };
81    
82    #ifdef WIN32
83    HINSTANCE gigedit_dll_handle = 0;
84    #endif
85    
86  void init_app() {  void init_app() {
87      static bool process_initialized = false;      static bool process_initialized = false;
88      if (!process_initialized) {      if (!process_initialized) {
# Line 87  void init_app() { Line 91  void init_app() {
91          setlocale(LC_ALL, "");          setlocale(LC_ALL, "");
92    
93  #if HAVE_GETTEXT  #if HAVE_GETTEXT
94    
95    #ifdef WIN32
96    #if GLIB_CHECK_VERSION(2, 16, 0)
97            gchar* root =
98                g_win32_get_package_installation_directory_of_module(gigedit_dll_handle);
99    #else
100            gchar* root =
101                g_win32_get_package_installation_directory(NULL, NULL);
102    #endif
103            gchar* temp = g_build_filename(root, "/share/locale", NULL);
104            g_free(root);
105            gchar* localedir = g_win32_locale_filename_from_utf8(temp);
106            g_free(temp);
107            bindtextdomain(GETTEXT_PACKAGE, localedir);
108            g_free(localedir);
109    #else
110          bindtextdomain(GETTEXT_PACKAGE, LOCALEDIR);          bindtextdomain(GETTEXT_PACKAGE, LOCALEDIR);
111    #endif
112          bind_textdomain_codeset(GETTEXT_PACKAGE, "UTF-8");          bind_textdomain_codeset(GETTEXT_PACKAGE, "UTF-8");
113          textdomain(GETTEXT_PACKAGE);          textdomain(GETTEXT_PACKAGE);
114  #endif // HAVE_GETTEXT  #endif // HAVE_GETTEXT
# Line 127  void connect_signals(GigEdit* gigedit, M Line 148  void connect_signals(GigEdit* gigedit, M
148      mainwindow->signal_dimreg_changed().connect(      mainwindow->signal_dimreg_changed().connect(
149          gigedit->signal_dimreg_changed().make_slot()          gigedit->signal_dimreg_changed().make_slot()
150      );      );
151        mainwindow->signal_sample_changed().connect(
152            gigedit->signal_sample_changed().make_slot()
153        );
154      mainwindow->signal_sample_ref_changed().connect(      mainwindow->signal_sample_ref_changed().connect(
155          gigedit->signal_sample_ref_changed().make_slot()          gigedit->signal_sample_ref_changed().make_slot()
156      );      );
157        mainwindow->signal_keyboard_key_hit().connect(
158            gigedit->signal_keyboard_key_hit().make_slot()
159        );
160        mainwindow->signal_keyboard_key_released().connect(
161            gigedit->signal_keyboard_key_released().make_slot()
162        );
163  }  }
164    
165  } // namespace  } // namespace
# Line 203  sigc::signal<void, gig::DimensionRegion* Line 233  sigc::signal<void, gig::DimensionRegion*
233      return dimreg_changed_signal;      return dimreg_changed_signal;
234  }  }
235    
236    sigc::signal<void, gig::Sample*>& GigEdit::signal_sample_changed() {
237        return sample_changed_signal;
238    }
239    
240  sigc::signal<void, gig::Sample*/*old*/, gig::Sample*/*new*/>& GigEdit::signal_sample_ref_changed() {  sigc::signal<void, gig::Sample*/*old*/, gig::Sample*/*new*/>& GigEdit::signal_sample_ref_changed() {
241      return sample_ref_changed_signal;      return sample_ref_changed_signal;
242  }  }
243    
244    sigc::signal<void, int/*key*/, int/*velocity*/>& GigEdit::signal_keyboard_key_hit() {
245        return keyboard_key_hit_signal;
246    }
247    
248    sigc::signal<void, int/*key*/, int/*velocity*/>& GigEdit::signal_keyboard_key_released() {
249        return keyboard_key_released_signal;
250    }
251    
252  Glib::StaticMutex GigEditState::mutex = GLIBMM_STATIC_MUTEX_INIT;  Glib::StaticMutex GigEditState::mutex = GLIBMM_STATIC_MUTEX_INIT;
253  Glib::Dispatcher* GigEditState::dispatcher = 0;  Glib::Dispatcher* GigEditState::dispatcher = 0;
# Line 267  void GigEditState::run(gig::Instrument* Line 308  void GigEditState::run(gig::Instrument*
308      mutex.unlock();      mutex.unlock();
309      close.wait(); // sleep until window is closed      close.wait(); // sleep until window is closed
310  }  }
311    
312    #if defined(WIN32)
313    extern "C" {
314        BOOL WINAPI DllMain(HINSTANCE instance, DWORD reason, LPVOID reserved)
315        {
316            switch (reason) {
317            case DLL_PROCESS_ATTACH:
318                gigedit_dll_handle = instance;
319                break;
320            }
321            return TRUE;
322        }
323    }
324    #endif

Legend:
Removed from v.1656  
changed lines
  Added in v.1898

  ViewVC Help
Powered by ViewVC