/* * This program source code file is part of KiCad, a free EDA CAD application. * * Copyright (C) 2020 Mark Roszko * Copyright (C) 2020-2021 KiCad Developers, see AUTHORS.txt for contributors. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU General Public License as published by the * Free Software Foundation, either version 3 of the License, or (at your * option) any later version. * * This program is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * General Public License for more details. * * You should have received a copy of the GNU General Public License along * with this program. If not, see . */ #include #include #include #include /* * Function to attach to the glib logger to eat the output it gives so we don't * get the message spam on the terminal from wxWidget's abuse of the GTK API. */ static GLogWriterOutput nullLogWriter( GLogLevelFlags log_level, const GLogField* fields, gsize n_fields, gpointer user_data ) { return G_LOG_WRITER_HANDLED; } bool KIPLATFORM::APP::Init() { #if !defined( KICAD_SHOW_GTK_MESSAGES ) // Attach a logger that will consume the annoying GTK error messages g_log_set_writer_func( nullLogWriter, nullptr, nullptr ); #endif return true; } bool KIPLATFORM::APP::AttachConsole( bool aTryAlloc ) { // Not implemented on this platform return true; } bool KIPLATFORM::APP::IsOperatingSystemUnsupported() { // Not implemented on this platform return false; } bool KIPLATFORM::APP::RegisterApplicationRestart( const wxString& aCommandLine ) { // Not implemented on this platform return true; } bool KIPLATFORM::APP::UnregisterApplicationRestart() { // Not implemented on this platform return true; } bool KIPLATFORM::APP::SupportsShutdownBlockReason() { return false; } void KIPLATFORM::APP::RemoveShutdownBlockReason( wxWindow* aWindow ) { } void KIPLATFORM::APP::SetShutdownBlockReason( wxWindow* aWindow, const wxString& aReason ) { } void KIPLATFORM::APP::ForceTimerMessagesToBeCreatedIfNecessary() { } void KIPLATFORM::APP::AddDynamicLibrarySearchPath( const wxString& aPath ) { }