using System;
using System.Collections.Generic;
using System.Text;
using System.Windows.Forms;

namespace CommonMP.HYMCO.OptionImpl.CommonControlLibrary
{
    /// <summary>
    /// 共通ライブラリクラス
    /// </summary>
    public class CommonLib
    {
        /// <summary>
        /// 入力エラーメッセージを表示する
        /// </summary>
        /// <param name="sMessage">エラーメッセージ</param>
        public static void ShowInputError(string sMessage)
        {
            MessageBox.Show(sMessage, Properties.CommonControlLibraryResources.MSG_INPUT_ERROR, MessageBoxButtons.OK, MessageBoxIcon.Warning);
        }

        /// <summary>
        /// ファイル存在チェック（相対パスの場合で、カレントディレクトリが移動されていても実行パスを基準にチェック）
        /// </summary>
        /// <param name="fileNamePath">ファイル名パス（絶対パス or 実行ディレクトリ基準の相対パス）</param>
        /// <returns></returns>
        public static bool FileExists(string fileNamePath)
        {
            //相対パスを絶対パスに変換
            string path = GetFullPath(fileNamePath);
            if (!System.IO.File.Exists(path))
            {
                return false;
            }
            return true;
        }

        /// <summary>
        /// 相対パスを絶対パスに変換（相相対パスの場合で、カレントディレクトリが移動されていても実行パスを基準に変換）
        /// </summary>
        /// <param name="fileNamePath"></param>
        /// <returns></returns>
        public static string GetFullPath(string fileNamePath)
        {
            if (fileNamePath == null || fileNamePath.Length == 0)
                return fileNamePath;

            //相対パスを絶対パスに変換
            Uri uriPath = new Uri(new Uri(Application.StartupPath + "\\"), fileNamePath);
            return uriPath.LocalPath;
        }

    }
}
