X-Git-Url: http://git.xonotic.org/?a=blobdiff_plain;f=radiant%2Fmainframe.cpp;h=ecafc384ef048e0b282287de0554a7a785633d85;hb=2951e448a7f008f2438be4bd5feba2e4f4400eef;hp=4af997f9c024638476e1301dd2b733e3164ce323;hpb=7a6d52cddfb66e7433405c9835b0995e308011dd;p=xonotic%2Fnetradiant.git diff --git a/radiant/mainframe.cpp b/radiant/mainframe.cpp index 4af997f9..ecafc384 100644 --- a/radiant/mainframe.cpp +++ b/radiant/mainframe.cpp @@ -26,6 +26,7 @@ // #include "mainframe.h" +#include "globaldefs.h" #include @@ -148,6 +149,8 @@ void VFS_Refresh(){ QE_InitVFS(); GlobalFileSystem().refresh(); g_vfsInitialized = true; + // also refresg models + RefreshReferences(); // also refresh texture browser TextureBrowser_RefreshShaders(); } @@ -178,7 +181,7 @@ void VFS_Destroy(){ // Home Paths -#ifdef WIN32 +#if GDEF_OS_WINDOWS #include #include const GUID qFOLDERID_SavedGames = {0x4C5C32FF, 0xBB9D, 0x43b0, {0xB5, 0xB4, 0x2D, 0x72, 0xE5, 0x4E, 0xAA, 0xA4}}; @@ -195,7 +198,7 @@ void HomePaths_Realise(){ if ( !string_empty( prefix ) ) { StringOutputStream path( 256 ); -#if defined( __APPLE__ ) +#if GDEF_OS_MACOS path.clear(); path << DirectoryCleaned( g_get_home_dir() ) << "Library/Application Support" << ( prefix + 1 ) << "/"; if ( file_is_directory( path.c_str() ) ) { @@ -206,7 +209,7 @@ void HomePaths_Realise(){ path << DirectoryCleaned( g_get_home_dir() ) << prefix << "/"; #endif -#if defined( WIN32 ) +#if GDEF_OS_WINDOWS TCHAR mydocsdir[MAX_PATH + 1]; wchar_t *mydocsdirw; HMODULE shfolder = LoadLibrary( "shfolder.dll" ); @@ -245,7 +248,7 @@ void HomePaths_Realise(){ } #endif -#if defined( POSIX ) +#if GDEF_OS_POSIX path.clear(); path << DirectoryCleaned( g_get_home_dir() ) << prefix << "/"; g_qeglobals.m_userEnginePath = path.c_str(); @@ -441,7 +444,7 @@ ui::Window BuildDialog(){ frame.add(vbox2); { - PreferencesPage preferencesPage( *this, ui::Widget(GTK_WIDGET( vbox2 )) ); + PreferencesPage preferencesPage( *this, vbox2 ); Paths_constructPreferences( preferencesPage ); } @@ -537,11 +540,11 @@ void operator()( const char* name ) const { const char* const c_library_extension = #if defined( CMAKE_SHARED_MODULE_SUFFIX ) CMAKE_SHARED_MODULE_SUFFIX -#elif defined( WIN32 ) +#elif GDEF_OS_WINDOWS "dll" -#elif defined ( __APPLE__ ) +#elif GDEF_OS_MACOS "dylib" -#elif defined( __linux__ ) || defined ( __FreeBSD__ ) +#elif GDEF_OS_LINUX || GDEF_OS_BSD "so" #endif ; @@ -955,13 +958,13 @@ void OpenBugReportURL(){ } -ui::Widget g_page_console; +ui::Widget g_page_console{ui::null}; void Console_ToggleShow(){ GroupDialog_showPage( g_page_console ); } -ui::Widget g_page_entity; +ui::Widget g_page_entity{ui::null}; void EntityInspector_ToggleShow(){ GroupDialog_showPage( g_page_entity ); @@ -1610,7 +1613,7 @@ class WaitDialog { public: ui::Window m_window{ui::null}; -ui::Label m_label{(GtkLabel *) nullptr}; +ui::Label m_label{ui::null}; }; WaitDialog create_wait_dialog( const char* title, const char* text ){ @@ -1621,7 +1624,7 @@ WaitDialog create_wait_dialog( const char* title, const char* text ){ gtk_container_set_border_width( GTK_CONTAINER( dialog.m_window ), 0 ); gtk_window_set_position( dialog.m_window, GTK_WIN_POS_CENTER_ON_PARENT ); - g_signal_connect( G_OBJECT( dialog.m_window ), "realize", G_CALLBACK( window_realize_remove_decoration ), 0 ); + dialog.m_window.connect( "realize", G_CALLBACK( window_realize_remove_decoration ), 0 ); { dialog.m_label = ui::Label( text ); @@ -1674,7 +1677,7 @@ bool ScreenUpdates_Enabled(){ } void ScreenUpdates_process(){ - if ( redrawRequired() && gtk_widget_get_visible( g_wait.m_window ) ) { + if ( redrawRequired() && g_wait.m_window.visible() ) { ui::process(); } } @@ -1696,8 +1699,8 @@ void ScreenUpdates_Disable( const char* message, const char* title ){ ScreenUpdates_process(); } } - else if ( gtk_widget_get_visible( g_wait.m_window ) ) { - gtk_label_set_text( g_wait.m_label, message ); + else if ( g_wait.m_window.visible() ) { + g_wait.m_label.text(message); ScreenUpdates_process(); } g_wait_stack.push_back( message ); @@ -1716,8 +1719,8 @@ void ScreenUpdates_Enable(){ //gtk_window_present(MainFrame_getWindow()); } - else if ( gtk_widget_get_visible( g_wait.m_window ) ) { - gtk_label_set_text( g_wait.m_label, g_wait_stack.back().c_str() ); + else if ( g_wait.m_window.visible() ) { + g_wait.m_label.text(g_wait_stack.back().c_str()); ScreenUpdates_process(); } } @@ -1875,10 +1878,10 @@ void fill_view_xz_front_menu( ui::Menu menu ){ } -ui::Widget g_toggle_z_item; -ui::Widget g_toggle_console_item; -ui::Widget g_toggle_entity_item; -ui::Widget g_toggle_entitylist_item; +ui::Widget g_toggle_z_item{ui::null}; +ui::Widget g_toggle_console_item{ui::null}; +ui::Widget g_toggle_entity_item{ui::null}; +ui::Widget g_toggle_entitylist_item{ui::null}; ui::MenuItem create_view_menu( MainFrame::EViewStyle style ){ // View menu @@ -2163,7 +2166,7 @@ ui::MenuItem create_help_menu(){ return help_menu_item; } -GtkMenuBar* create_main_menu( MainFrame::EViewStyle style ){ +ui::MenuBar create_main_menu( MainFrame::EViewStyle style ){ auto menu_bar = ui::MenuBar(GTK_MENU_BAR( gtk_menu_bar_new() )); menu_bar.show(); @@ -2453,10 +2456,10 @@ public: WindowFocusPrinter( const char* name ) : m_name( name ){ } void connect( ui::Window toplevel_window ){ - g_signal_connect( G_OBJECT( toplevel_window ), "notify::has_toplevel_focus", G_CALLBACK( notify ), this ); - g_signal_connect( G_OBJECT( toplevel_window ), "notify::is_active", G_CALLBACK( notify ), this ); - g_signal_connect( G_OBJECT( toplevel_window ), "keys_changed", G_CALLBACK( keys_changed ), this ); - g_signal_connect( G_OBJECT( toplevel_window ), "frame_event", G_CALLBACK( frame_event ), this ); + toplevel_window.connect( "notify::has_toplevel_focus", G_CALLBACK( notify ), this ); + toplevel_window.connect( "notify::is_active", G_CALLBACK( notify ), this ); + toplevel_window.connect( "keys_changed", G_CALLBACK( keys_changed ), this ); + toplevel_window.connect( "frame_event", G_CALLBACK( frame_event ), this ); } }; @@ -2467,7 +2470,7 @@ WindowFocusPrinter g_mainframeFocusPrinter( "mainframe" ); class MainWindowActive { static gboolean notify( ui::Window window, gpointer dummy, MainWindowActive* self ){ - if ( g_wait.m_window && gtk_window_is_active( window ) && !gtk_widget_get_visible( g_wait.m_window ) ) { + if ( g_wait.m_window && gtk_window_is_active( window ) && !g_wait.m_window.visible() ) { g_wait.m_window.show(); } @@ -2475,7 +2478,7 @@ static gboolean notify( ui::Window window, gpointer dummy, MainWindowActive* sel } public: void connect( ui::Window toplevel_window ){ - g_signal_connect( G_OBJECT( toplevel_window ), "notify::is-active", G_CALLBACK( notify ), this ); + toplevel_window.connect( "notify::is-active", G_CALLBACK( notify ), this ); } }; @@ -2509,7 +2512,7 @@ ui::Window MainFrame_getWindow() std::vector g_floating_windows; -MainFrame::MainFrame() : m_window( 0 ), m_idleRedrawStatusText( RedrawStatusTextCaller( *this ) ){ +MainFrame::MainFrame() : m_idleRedrawStatusText( RedrawStatusTextCaller( *this ) ){ m_pXYWnd = 0; m_pCamWnd = 0; m_pZWnd = 0; @@ -2517,9 +2520,8 @@ MainFrame::MainFrame() : m_window( 0 ), m_idleRedrawStatusText( RedrawStatusText m_pXZWnd = 0; m_pActiveXY = 0; - for ( int n = 0; n < c_count_status; n++ ) - { - m_pStatusLabel[n] = ui::root; + for (auto &n : m_pStatusLabel) { + n = NULL; } m_bSleeping = false; @@ -2530,16 +2532,16 @@ MainFrame::MainFrame() : m_window( 0 ), m_idleRedrawStatusText( RedrawStatusText MainFrame::~MainFrame(){ SaveWindowInfo(); - gtk_widget_hide( GTK_WIDGET( m_window ) ); + m_window.hide(); Shutdown(); for ( std::vector::iterator i = g_floating_windows.begin(); i != g_floating_windows.end(); ++i ) { - gtk_widget_destroy( *i ); + i->destroy(); } - gtk_widget_destroy( GTK_WIDGET( m_window ) ); + m_window.destroy(); } void MainFrame::SetActiveXY( XYWnd* p ){ @@ -2601,7 +2603,7 @@ void MainFrame::CreateContexts(){ #endif } -#ifdef _DEBUG +#if GDEF_DEBUG //#define DBG_SLEEP #endif @@ -2687,7 +2689,7 @@ void show_splash(){ } void hide_splash(){ - gtk_widget_destroy( GTK_WIDGET( splash_screen ) ); + splash_screen.destroy(); } WindowPositionTracker g_posCamWnd; @@ -2710,7 +2712,7 @@ void MainFrame::Create(){ gtk_window_set_transient_for( splash_screen, window ); -#if !defined( WIN32 ) +#if !GDEF_OS_WINDOWS { GdkPixbuf* pixbuf = pixbuf_new_from_file_with_mask( "bitmaps/icon.png" ); if ( pixbuf != 0 ) { @@ -2721,7 +2723,7 @@ void MainFrame::Create(){ #endif gtk_widget_add_events( GTK_WIDGET( window ), GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK | GDK_FOCUS_CHANGE_MASK ); - g_signal_connect( G_OBJECT( window ), "delete_event", G_CALLBACK( mainframe_delete ), this ); + window.connect( "delete_event", G_CALLBACK( mainframe_delete ), this ); m_position_tracker.connect( window ); @@ -2734,7 +2736,7 @@ void MainFrame::Create(){ GetPlugInMgr().Init( window ); - ui::Widget vbox = ui::VBox( FALSE, 0 ); + auto vbox = ui::VBox( FALSE, 0 ); window.add(vbox); vbox.show(); @@ -2744,20 +2746,20 @@ void MainFrame::Create(){ register_shortcuts(); - GtkMenuBar* main_menu = create_main_menu( CurrentStyle() ); - gtk_box_pack_start( GTK_BOX( vbox ), GTK_WIDGET( main_menu ), FALSE, FALSE, 0 ); + auto main_menu = create_main_menu( CurrentStyle() ); + vbox.pack_start( main_menu, FALSE, FALSE, 0 ); - GtkToolbar* main_toolbar = create_main_toolbar( CurrentStyle() ); - gtk_box_pack_start( GTK_BOX( vbox ), GTK_WIDGET( main_toolbar ), FALSE, FALSE, 0 ); + auto main_toolbar = create_main_toolbar( CurrentStyle() ); + vbox.pack_start( main_toolbar, FALSE, FALSE, 0 ); - GtkToolbar* plugin_toolbar = create_plugin_toolbar(); + auto plugin_toolbar = create_plugin_toolbar(); if ( !g_Layout_enablePluginToolbar.m_value ) { - gtk_widget_hide( GTK_WIDGET( plugin_toolbar ) ); + plugin_toolbar.hide(); } - gtk_box_pack_start( GTK_BOX( vbox ), GTK_WIDGET( plugin_toolbar ), FALSE, FALSE, 0 ); + vbox.pack_start( plugin_toolbar, FALSE, FALSE, 0 ); - ui::Widget main_statusbar = create_main_statusbar( m_pStatusLabel ); - gtk_box_pack_end( GTK_BOX( vbox ), main_statusbar, FALSE, TRUE, 2 ); + ui::Widget main_statusbar = create_main_statusbar(reinterpret_cast(m_pStatusLabel)); + vbox.pack_end(main_statusbar, FALSE, TRUE, 2); GroupDialog_constructWindow( window ); g_page_entity = GroupDialog_addPage( "Entities", EntityInspector_constructWindow( GroupDialog_getWindow() ), RawStringExportCaller( "Entities" ) ); @@ -2766,7 +2768,7 @@ void MainFrame::Create(){ g_page_console = GroupDialog_addPage( "Console", Console_constructWindow( GroupDialog_getWindow() ), RawStringExportCaller( "Console" ) ); } -#ifdef WIN32 +#if GDEF_OS_WINDOWS if ( g_multimon_globals.m_bStartOnPrimMon ) { PositionWindowOnPrimaryScreen( g_layout_globals.m_position ); window_set_position( window, g_layout_globals.m_position ); @@ -2789,9 +2791,9 @@ void MainFrame::Create(){ if ( CurrentStyle() == eRegular || CurrentStyle() == eRegularLeft ) { { - ui::Widget vsplit = ui::VPaned(); + ui::Widget vsplit = ui::VPaned(ui::New); m_vSplit = vsplit; - gtk_box_pack_start( GTK_BOX( vbox ), vsplit, TRUE, TRUE, 0 ); + vbox.pack_start( vsplit, TRUE, TRUE, 0 ); vsplit.show(); // console @@ -2799,7 +2801,7 @@ void MainFrame::Create(){ gtk_paned_pack2( GTK_PANED( vsplit ), console_window, FALSE, TRUE ); { - ui::Widget hsplit = ui::HPaned(); + ui::Widget hsplit = ui::HPaned(ui::New); hsplit.show(); m_hSplit = hsplit; gtk_paned_add1( GTK_PANED( vsplit ), hsplit ); @@ -2810,7 +2812,7 @@ void MainFrame::Create(){ ui::Widget xy_window = ui::Widget(GTK_WIDGET( create_framed_widget( m_pXYWnd->GetWidget() ) )); { - ui::Widget vsplit2 = ui::VPaned(); + ui::Widget vsplit2 = ui::VPaned(ui::New); vsplit2.show(); m_vSplit2 = vsplit2; @@ -2960,8 +2962,8 @@ void MainFrame::Create(){ ui::Widget xz = m_pXZWnd->GetWidget(); - GtkHPaned* split = create_split_views( camera, yz, xy, xz ); - gtk_box_pack_start( GTK_BOX( vbox ), GTK_WIDGET( split ), TRUE, TRUE, 0 ); + auto split = create_split_views( camera, yz, xy, xz ); + vbox.pack_start( split, TRUE, TRUE, 0 ); { GtkFrame* frame = create_framed_widget( TextureBrowser_constructWindow( window ) ); @@ -3038,11 +3040,11 @@ void MainFrame::Shutdown(){ } void MainFrame::RedrawStatusText(){ - gtk_label_set_text( GTK_LABEL( m_pStatusLabel[c_command_status] ), m_command_status.c_str() ); - gtk_label_set_text( GTK_LABEL( m_pStatusLabel[c_position_status] ), m_position_status.c_str() ); - gtk_label_set_text( GTK_LABEL( m_pStatusLabel[c_brushcount_status] ), m_brushcount_status.c_str() ); - gtk_label_set_text( GTK_LABEL( m_pStatusLabel[c_texture_status] ), m_texture_status.c_str() ); - gtk_label_set_text( GTK_LABEL( m_pStatusLabel[c_grid_status] ), m_grid_status.c_str() ); + ui::Label::from(m_pStatusLabel[c_command_status]).text(m_command_status.c_str()); + ui::Label::from(m_pStatusLabel[c_position_status]).text(m_position_status.c_str()); + ui::Label::from(m_pStatusLabel[c_brushcount_status]).text(m_brushcount_status.c_str()); + ui::Label::from(m_pStatusLabel[c_texture_status]).text(m_texture_status.c_str()); + ui::Label::from(m_pStatusLabel[c_grid_status]).text(m_grid_status.c_str()); } void MainFrame::UpdateStatusText(){ @@ -3096,7 +3098,8 @@ void GlobalGL_sharedContextCreated(){ globalOutputStream() << "GL_VENDOR: " << reinterpret_cast( glGetString( GL_VENDOR ) ) << "\n"; globalOutputStream() << "GL_RENDERER: " << reinterpret_cast( glGetString( GL_RENDERER ) ) << "\n"; globalOutputStream() << "GL_VERSION: " << reinterpret_cast( glGetString( GL_VERSION ) ) << "\n"; - globalOutputStream() << "GL_EXTENSIONS: " << reinterpret_cast( glGetString( GL_EXTENSIONS ) ) << "\n"; + const auto extensions = reinterpret_cast( glGetString(GL_EXTENSIONS ) ); + globalOutputStream() << "GL_EXTENSIONS: " << (extensions ? extensions : "") << "\n"; QGL_sharedContextCreated( GlobalOpenGL() ); @@ -3105,7 +3108,7 @@ void GlobalGL_sharedContextCreated(){ GlobalShaderCache().realise(); Textures_Realise(); -#ifdef WIN32 +#if GDEF_OS_WINDOWS /* win32 is dodgy here, just use courier new then */ g_font = glfont_create( "arial 9" ); #else @@ -3169,7 +3172,7 @@ void Layout_registerPreferencesPage(){ #include "stringio.h" void MainFrame_Construct(){ - GlobalCommands_insert( "OpenManual", FreeCaller(), Accelerator( GDK_F1 ) ); + GlobalCommands_insert( "OpenManual", FreeCaller(), Accelerator( GDK_KEY_F1 ) ); GlobalCommands_insert( "Sleep", FreeCaller(), Accelerator( 'P', (GdkModifierType)( GDK_SHIFT_MASK | GDK_CONTROL_MASK ) ) ); GlobalCommands_insert( "NewMap", FreeCaller() ); @@ -3179,7 +3182,7 @@ void MainFrame_Construct(){ GlobalCommands_insert( "SaveMapAs", FreeCaller() ); GlobalCommands_insert( "ExportSelected", FreeCaller() ); GlobalCommands_insert( "SaveRegion", FreeCaller() ); - GlobalCommands_insert( "RefreshReferences", FreeCaller() ); + GlobalCommands_insert( "RefreshReferences", FreeCaller() ); GlobalCommands_insert( "ProjectSettings", FreeCaller() ); GlobalCommands_insert( "Exit", FreeCaller() ); @@ -3188,11 +3191,11 @@ void MainFrame_Construct(){ GlobalCommands_insert( "Copy", FreeCaller(), Accelerator( 'C', (GdkModifierType)GDK_CONTROL_MASK ) ); GlobalCommands_insert( "Paste", FreeCaller(), Accelerator( 'V', (GdkModifierType)GDK_CONTROL_MASK ) ); GlobalCommands_insert( "PasteToCamera", FreeCaller(), Accelerator( 'V', (GdkModifierType)GDK_MOD1_MASK ) ); - GlobalCommands_insert( "CloneSelection", FreeCaller(), Accelerator( GDK_space ) ); - GlobalCommands_insert( "CloneSelectionAndMakeUnique", FreeCaller(), Accelerator( GDK_space, (GdkModifierType)GDK_SHIFT_MASK ) ); - GlobalCommands_insert( "DeleteSelection", FreeCaller(), Accelerator( GDK_BackSpace ) ); + GlobalCommands_insert( "CloneSelection", FreeCaller(), Accelerator( GDK_KEY_space ) ); + GlobalCommands_insert( "CloneSelectionAndMakeUnique", FreeCaller(), Accelerator( GDK_KEY_space, (GdkModifierType)GDK_SHIFT_MASK ) ); + GlobalCommands_insert( "DeleteSelection", FreeCaller(), Accelerator( GDK_KEY_BackSpace ) ); GlobalCommands_insert( "ParentSelection", FreeCaller() ); - GlobalCommands_insert( "UnSelectSelection", FreeCaller(), Accelerator( GDK_Escape ) ); + GlobalCommands_insert( "UnSelectSelection", FreeCaller(), Accelerator( GDK_KEY_Escape ) ); GlobalCommands_insert( "InvertSelection", FreeCaller(), Accelerator( 'I' ) ); GlobalCommands_insert( "SelectInside", FreeCaller() ); GlobalCommands_insert( "SelectTouching", FreeCaller() ); @@ -3264,24 +3267,24 @@ void MainFrame_Construct(){ GlobalCommands_insert( "SelectAllOfType", FreeCaller(), Accelerator( 'A', (GdkModifierType)GDK_SHIFT_MASK ) ); - GlobalCommands_insert( "TexRotateClock", FreeCaller(), Accelerator( GDK_Next, (GdkModifierType)GDK_SHIFT_MASK ) ); - GlobalCommands_insert( "TexRotateCounter", FreeCaller(), Accelerator( GDK_Prior, (GdkModifierType)GDK_SHIFT_MASK ) ); - GlobalCommands_insert( "TexScaleUp", FreeCaller(), Accelerator( GDK_Up, (GdkModifierType)GDK_CONTROL_MASK ) ); - GlobalCommands_insert( "TexScaleDown", FreeCaller(), Accelerator( GDK_Down, (GdkModifierType)GDK_CONTROL_MASK ) ); - GlobalCommands_insert( "TexScaleLeft", FreeCaller(), Accelerator( GDK_Left, (GdkModifierType)GDK_CONTROL_MASK ) ); - GlobalCommands_insert( "TexScaleRight", FreeCaller(), Accelerator( GDK_Right, (GdkModifierType)GDK_CONTROL_MASK ) ); - GlobalCommands_insert( "TexShiftUp", FreeCaller(), Accelerator( GDK_Up, (GdkModifierType)GDK_SHIFT_MASK ) ); - GlobalCommands_insert( "TexShiftDown", FreeCaller(), Accelerator( GDK_Down, (GdkModifierType)GDK_SHIFT_MASK ) ); - GlobalCommands_insert( "TexShiftLeft", FreeCaller(), Accelerator( GDK_Left, (GdkModifierType)GDK_SHIFT_MASK ) ); - GlobalCommands_insert( "TexShiftRight", FreeCaller(), Accelerator( GDK_Right, (GdkModifierType)GDK_SHIFT_MASK ) ); - - GlobalCommands_insert( "MoveSelectionDOWN", FreeCaller(), Accelerator( GDK_KP_Subtract ) ); - GlobalCommands_insert( "MoveSelectionUP", FreeCaller(), Accelerator( GDK_KP_Add ) ); - - GlobalCommands_insert( "SelectNudgeLeft", FreeCaller(), Accelerator( GDK_Left, (GdkModifierType)GDK_MOD1_MASK ) ); - GlobalCommands_insert( "SelectNudgeRight", FreeCaller(), Accelerator( GDK_Right, (GdkModifierType)GDK_MOD1_MASK ) ); - GlobalCommands_insert( "SelectNudgeUp", FreeCaller(), Accelerator( GDK_Up, (GdkModifierType)GDK_MOD1_MASK ) ); - GlobalCommands_insert( "SelectNudgeDown", FreeCaller(), Accelerator( GDK_Down, (GdkModifierType)GDK_MOD1_MASK ) ); + GlobalCommands_insert( "TexRotateClock", FreeCaller(), Accelerator( GDK_KEY_Next, (GdkModifierType)GDK_SHIFT_MASK ) ); + GlobalCommands_insert( "TexRotateCounter", FreeCaller(), Accelerator( GDK_KEY_Prior, (GdkModifierType)GDK_SHIFT_MASK ) ); + GlobalCommands_insert( "TexScaleUp", FreeCaller(), Accelerator( GDK_KEY_Up, (GdkModifierType)GDK_CONTROL_MASK ) ); + GlobalCommands_insert( "TexScaleDown", FreeCaller(), Accelerator( GDK_KEY_Down, (GdkModifierType)GDK_CONTROL_MASK ) ); + GlobalCommands_insert( "TexScaleLeft", FreeCaller(), Accelerator( GDK_KEY_Left, (GdkModifierType)GDK_CONTROL_MASK ) ); + GlobalCommands_insert( "TexScaleRight", FreeCaller(), Accelerator( GDK_KEY_Right, (GdkModifierType)GDK_CONTROL_MASK ) ); + GlobalCommands_insert( "TexShiftUp", FreeCaller(), Accelerator( GDK_KEY_Up, (GdkModifierType)GDK_SHIFT_MASK ) ); + GlobalCommands_insert( "TexShiftDown", FreeCaller(), Accelerator( GDK_KEY_Down, (GdkModifierType)GDK_SHIFT_MASK ) ); + GlobalCommands_insert( "TexShiftLeft", FreeCaller(), Accelerator( GDK_KEY_Left, (GdkModifierType)GDK_SHIFT_MASK ) ); + GlobalCommands_insert( "TexShiftRight", FreeCaller(), Accelerator( GDK_KEY_Right, (GdkModifierType)GDK_SHIFT_MASK ) ); + + GlobalCommands_insert( "MoveSelectionDOWN", FreeCaller(), Accelerator( GDK_KEY_KP_Subtract ) ); + GlobalCommands_insert( "MoveSelectionUP", FreeCaller(), Accelerator( GDK_KEY_KP_Add ) ); + + GlobalCommands_insert( "SelectNudgeLeft", FreeCaller(), Accelerator( GDK_KEY_Left, (GdkModifierType)GDK_MOD1_MASK ) ); + GlobalCommands_insert( "SelectNudgeRight", FreeCaller(), Accelerator( GDK_KEY_Right, (GdkModifierType)GDK_MOD1_MASK ) ); + GlobalCommands_insert( "SelectNudgeUp", FreeCaller(), Accelerator( GDK_KEY_Up, (GdkModifierType)GDK_MOD1_MASK ) ); + GlobalCommands_insert( "SelectNudgeDown", FreeCaller(), Accelerator( GDK_KEY_Down, (GdkModifierType)GDK_MOD1_MASK ) ); Patch_registerCommands(); XYShow_registerCommands(); @@ -3311,11 +3314,11 @@ void MainFrame_Construct(){ { const char* ENGINEPATH_ATTRIBUTE = -#if defined( WIN32 ) +#if GDEF_OS_WINDOWS "enginepath_win32" -#elif defined( __APPLE__ ) +#elif GDEF_OS_MACOS "enginepath_macos" -#elif defined( __linux__ ) || defined ( __FreeBSD__ ) +#elif GDEF_OS_LINUX || GDEF_OS_BSD "enginepath_linux" #else #error "unknown platform"