Inheritance: MonoBehaviour
Exemplo n.º 1
0
        public override void SetPlugin(SC.Interfaces.IScPluginClient plugin)
        {
            if (plugin != null && plugin is SC.Interfaces.IScServerPluginClient)
                this.plugin = plugin as SC.Interfaces.IScServerPluginClient;

            RefreshView();
        }
Exemplo n.º 2
0
        public static BOOL EnableMenuItem(HandleRef hMenu, SC uIDEnableItem, MF uEnable)
        {
            BOOL result = EnableMenuItem(hMenu.Handle, uIDEnableItem, uEnable);

            GC.KeepAlive(hMenu.Wrapper);
            return(result);
        }
Exemplo n.º 3
0
    public static void Main(String[] args)
    {
        IFormatter fmtr = new SoapFormatter();

        // IFormatter fmtr = new BinaryFormatter();        // Alternative
        if (!File.Exists("objects"))
        {
            Console.WriteLine("Creating objects and writing them to file:");
            SC c = new SC();
            SO o1 = new SO(1, c), o2 = new SO(2, c);
            Console.WriteLine("The SC object is shared between o1 and o2:");
            o1.c.ci = 3; o2.c.ci = 4;           // Update the shared c twice
            o1.CPrint(); o2.CPrint();           // Prints i1c4 i2c4
            // Open file and serialize objects to it:
            Stream strm = File.Open("objects", FileMode.Create);
            fmtr.Serialize(strm, o1); fmtr.Serialize(strm, o2);
            strm.Close();
            Console.WriteLine("\nRun the example again to read objects from file");
        }
        else
        {
            Console.WriteLine("Reading objects from file (unshared c):");
            Stream strm = File.Open("objects", FileMode.Open);
            SO     o1i = (SO)(fmtr.Deserialize(strm)), o2i = (SO)(fmtr.Deserialize(strm));
            strm.Close();
            o1i.CPrint(); o2i.CPrint();         // Prints i1c4() i2c4()
            Console.WriteLine("The sharing of the SC object is lost:");
            o1i.c.ci = 5; o2i.c.ci = 6;         // Update two different c's
            o1i.CPrint(); o2i.CPrint();         // Prints i1c5() i2c6()
            File.Delete("objects");
        }
        Console.WriteLine();
    }
Exemplo n.º 4
0
 public static void RemoveMenu(IntPtr hMenu, SC uPosition, MF uFlags)
 {
     if (!NativeMethods._RemoveMenu(hMenu, (uint)uPosition, (uint)uFlags))
     {
         throw new Win32Exception();
     }
 }
Exemplo n.º 5
0
        public static MF EnableMenuItem(IntPtr hMenu, SC uIDEnableItem, MF uEnable)
        {
            // Returns the previous state of the menu item, or -1 if the menu item does not exist.
            int iRet = _EnableMenuItem(hMenu, uIDEnableItem, uEnable);

            return((MF)iRet);
        }
Exemplo n.º 6
0
        internal void SetMTCache <M>()
        {
            var type  = typeof(M);
            var table = SqlProvider.GetTableName(type);

            SC.SetModelTable(SC.GetKey(type.FullName, Conn.Database), table);
        }
Exemplo n.º 7
0
 void Start()
 {
     sc            = GetComponent <SC>();
     crit          = GetComponent <Critter>();
     speedModifier = Random.value + 0.5f;
     GetComponent <Animator>().speed = speedModifier * 0.75f;
 }
Exemplo n.º 8
0
 void Start()
 {
     sc            = GetComponent <SC>();
     crit          = GetComponent <Critter>();
     speedModifier = Random.value + 0.5f;
     coolDown      = 0;
 }
Exemplo n.º 9
0
        public override void executar(List <string> parametros)
        {
            if (parametros.Count() > 1)
            {
                Pendencia pendencia     = new Pendencia(parametros[1]);
                string    descricao_in  = DevHelper.input("Digite a descrição do parâmetro: ");
                string    parDefault_in = DevHelper.input("Digite a parâmetro padrão: ").ToUpper();
                string    parAtual_in   = DevHelper.input("Digite o parâmetro atual: ").ToUpper();
                string    caminho       = DevHelper.encontraPacote(pendencia.pendenciaId);


                Parametro parametro = new Parametro(descricao_in, parDefault_in, parAtual_in, pendencia.funcaoId);

                SC     sc      = new SC(caminho, pendencia, false);
                string comando =
                    "IF NOT EXISTS(SELECT 1 FROM TAB_PARAMETRO_SISTEMA WHERE TAB_PARAMETRO_SISTEMA_ID = " + parametro.tabParametroSistemaId + ")\n" +
                    "BEGIN\n" +
                    "	INSERT INTO TAB_PARAMETRO_SISTEMA(Tab_Parametro_Sistema_Id,Desc_Parametro_Sistema,Parametro,Funcao_Id,Msg_Parametro,Default_Parametro,Desc_Parametro)\n"+
                    "	VALUES ("+ parametro.tabParametroSistemaId + ",'" + parametro.descricao + "','" + parametro.parAtual + "'," + parametro.funcao_id + ",'" + parametro.descricao + "','" + parametro.parDefault + "','" + parametro.descricao + "')\n" +
                    "END\n";
                sc.alterarSC(comando);
            }
            else
            {
                DevHelper.print("Informe o id da pendencia.");
            }
        }
Exemplo n.º 10
0
 private void PluginClicked(SC.Interfaces.IScPluginClient plugin)
 {
     int y = 0;
     pnlContent.Controls.Clear();
     SC.GUI.Utility.PluginPanelBase[] panels = null;
     try
     {
         panels = pluginPanelLoader.GetPanels(plugin);
     }
     catch (Exception e)
     {
         SC.GUI.Utility.ErrorForm.ShowErrorForm(e);
         return;
     }
     foreach (SC.GUI.Utility.PluginPanelBase panel in panels)
     {
         try
         {
             panel.Name = plugin.ToString() + y;
             panel.Location = new Point(0, y);
             y += panel.Size.Height + 10;
             pnlContent.Controls.Add(panel);
             panel.Show();
         }
         catch (Exception e)
         {
             SC.GUI.Utility.ErrorForm.ShowErrorForm(e);
         }
     }
 }
Exemplo n.º 11
0
        public override bool DoAfterSave()
        {
            RegisterMethod(MasterDALName, true);
            if (TopCount != 499 && SortField != "dInputDate DESC")
            {
                if (IsCheckAuth)
                {
                    dtMain = GetDataSet(TopCount, SC.GetAuthSQL(MasterFilerSQL == "" ? ShowType.FormShow : ShowType.FormQuery, FormID) + pWhere, SortField).Tables[0];
                }
                else
                {
                    dtMain = GetDataSet(TopCount, "1=1 " + pWhere, SortField).Tables[0];
                }
                bdsMain.DataSource    = dtMain;
                dtMain.ColumnChanged += new DataColumnChangeEventHandler(dtMain_ColumnChanged);
            }
            else
            {
                if (IsCheckAuth)
                {
                    dtMain = GetDataSet(SC.GetAuthSQL(MasterFilerSQL == "" ? ShowType.FormShow : ShowType.FormQuery, FormID) + pWhere).Tables[0];
                }
                else
                {
                    dtMain = GetDataSet("1=1 " + pWhere).Tables[0];
                }
                bdsMain.DataSource    = dtMain;
                dtMain.ColumnChanged += new DataColumnChangeEventHandler(dtMain_ColumnChanged);
            }

            BWS.ERP.BasePublic.BasePublic.SetAllControlsReadOnly(this.pnlInfo, true);
            IsDataChange = false;
            initButtonsState(BWS.ERP.BasePublic.OperateFlag.Save);
            return(base.DoAfterSave());
        }
Exemplo n.º 12
0
        internal static Key VkToKey(VK vk, SC sc, LLKHF flags, bool has_shift,
                                    bool has_altgr, bool has_capslock)
        {
            byte[] keystate = new byte[256];
            NativeMethods.GetKeyboardState(keystate);
            keystate[(int)VK.SHIFT]   = (byte)(has_shift ? 0x80 : 0x00);
            keystate[(int)VK.CONTROL] = (byte)(has_altgr ? 0x80 : 0x00);
            keystate[(int)VK.MENU]    = (byte)(has_altgr ? 0x80 : 0x00);
            keystate[(int)VK.CAPITAL] = (byte)(has_capslock ? 0x01 : 0x00);

            // These two calls must be done together and in this order.
            string str_if_normal = VkToUnicode(vk, sc, keystate, flags);
            string str_if_dead   = VkToUnicode(VK.SPACE);

            if (str_if_dead != " ")
            {
                return(new Key(str_if_dead));
            }

            // Special case: we don't consider characters such as Esc as printable
            // otherwise they are not properly serialised in the config file.
            if (str_if_normal == "" || str_if_normal[0] < ' ')
            {
                return(new Key(vk));
            }

            return(new Key(str_if_normal));
        }
Exemplo n.º 13
0
        public void Update(SC sc)
        {
            SqlDbHelper dbHelper = new SqlDbHelper();
            string      sql      = string.Format("UPDATE SC SET Grade={2} WHERE Sno='{0}' AND Cno={1}",
                                                 sc.Sno, sc.Cno, sc.Grade);

            dbHelper.ExecuteNonQuery(sql);
        }
 void Start()
 {
     sc                 = GetComponent <SC>();
     crit               = GetComponent <Critter>();
     speedModifier      = Random.value + 0.5f;
     lovedSideDirection = Random.value < 0.5f ? 1 : -1;
     minDist            = 0.8f + Random.value * 0.2f;
 }
Exemplo n.º 15
0
        public void SCExampleTest02()
        {
            SC pregnancy = "Patient is 6 months pregnant";

            pregnancy.Code       = null;
            pregnancy.NullFlavor = null;
            Assert.IsTrue(pregnancy.Validate());
        }
Exemplo n.º 16
0
        public void SCCodeCodeSystemNullValueTest()
        {
            SC sc = new SC();

            sc.Value = null;
            sc.Code  = "284196006";
            Assert.IsFalse(sc.Validate());
        }
Exemplo n.º 17
0
 public static void SceneStartInitServices()
 {
     inst = new GameObject("ServiceContainer", new System.Type[] { typeof(SC) }).GetComponent <SC>();
     foreach (KeyValuePair <System.Type, Service> kv in services)
     {
         kv.Value.SceneStartInitialize();
     }
 }
Exemplo n.º 18
0
        /// <summary>Обновление окна</summary>
        private void Action()
        {
            Logic.LogicInstances.ClearCacheAll();

            ElementControl();
            SC.CreateColumn();
            SC.DrawColumns();
        }
Exemplo n.º 19
0
      private static void _PostSystemCommand(Window window, SC command) {
         IntPtr hwnd = new WindowInteropHelper(window).Handle;
         if (hwnd == IntPtr.Zero || !NativeMethods.IsWindow(hwnd)) {
            return;
         }

         NativeMethods.PostMessage(hwnd, WM.SYSCOMMAND, new IntPtr((int)command), IntPtr.Zero);
      }
Exemplo n.º 20
0
        public void Insert(SC sc)
        {
            SqlDbHelper dbHelper = new SqlDbHelper();
            string      sql      = string.Format("INSERT INTO SC VALUES('{0}', {1}, {2})",
                                                 sc.Sno, sc.Cno, sc.Grade);

            dbHelper.ExecuteNonQuery(sql);
        }
Exemplo n.º 21
0
    // Update is called once per frame
    void Update()
    {
        //Player shoot
        if (swordHolder.active || bowHolder.active || wandHolder.active)
        {
            if (Input.GetKeyDown(KeyCode.Mouse0))
            {
                if (Time.time - lfireTime > fireinterval)
                {
                    if (swordHolder.active)
                    {
                        AudioSource.PlayClipAtPoint(swordFire, transform.position);
                    }
                    else if (bowHolder.active)
                    {
                        AudioSource.PlayClipAtPoint(bowFire, transform.position);
                    }
                    else if (wandHolder.active)
                    {
                        AudioSource.PlayClipAtPoint(wandFire, transform.position);
                    }
                    lfireTime   = Time.time;
                    bulletSpawn = this.gameObject.transform.GetChild(2);
                    shoot();
                }
            }
        }
        if (hp <= 0)
        {
            SC.GetComponent <SceneController>().GameOver.Invoke();
        }

        if (isSlowDown)
        {
            timeCountS += Time.deltaTime;
            GetComponent <Renderer>().material = p_material;
            if (timeCountS >= 2.5)
            {
                timeCountS = 0f;
                isSlowDown = false;
                speed      = 3;
                GetComponent <Renderer>().material = objColor;
            }
        }

        if (isFrozen)
        {
            timeCountF += Time.deltaTime;
            GetComponent <Renderer>().material = f_material;
            if (timeCountF >= 1.5)
            {
                timeCountF = 0f;
                isFrozen   = false;
                speed      = 3;
                GetComponent <Renderer>().material = objColor;
            }
        }
    }
Exemplo n.º 22
0
        public SC.GUI.Utility.PluginPanelBase CreatePluginPanel(SC.Interfaces.IScPluginClient plugin)
        {
            if (!IsPanelForPlugin(plugin))
                throw new ArgumentException("This plugin panel is for a different type of plugins.");

            SC.GUI.Utility.PluginPanelBase pluginpanel = Activator.CreateInstance(pluginPanelType) as SC.GUI.Utility.PluginPanelBase;
            pluginpanel.SetPlugin(plugin);
            return pluginpanel;
        }
Exemplo n.º 23
0
        public void SCValueTest()
        {
            SC sc = new SC();

            sc.Value      = "Hello";
            sc.Code       = null;
            sc.NullFlavor = null;
            Assert.IsTrue(sc.Validate());
        }
Exemplo n.º 24
0
        /// <summary>Обновление окна</summary>
        private void Action()
        {
            Helpers.LogicHelper.ClearCacheAll();

            ElementControl();
            SC.CreateColumn();
            SC.DrawColumns();
            SC.ColumnsSelector(Columns);
        }
Exemplo n.º 25
0
        public void SCCodeOriginalTextTest()
        {
            SC sc = new SC();

            sc.Value             = null;
            sc.Code              = "284196006";
            sc.Code.OriginalText = "Hello!";
            Assert.IsFalse(sc.Validate());
        }
Exemplo n.º 26
0
        public virtual void AttachServer(SC.Interfaces.IPluginServer server)
        {
            if (license == null)
                throw new InvalidOperationException("No license assigned.");

            license.AssertValid();
            this.server = server;
            RestoreSettings();
        }
Exemplo n.º 27
0
 public Device()
 {
     this.classCode             = new CSImpl();
     this.typeId                = new IIImpl();
     this.templateId            = new LISTImpl <II, Identifier>(typeof(IIImpl));
     this.code                  = new CEImpl();
     this.manufacturerModelName = new SCImpl <Code>();
     this.softwareName          = new SCImpl <Code>();
 }
Exemplo n.º 28
0
 public AuthoringDevice()
 {
     this.typeId                = new IIImpl();
     this.templateId            = new LISTImpl <II, Identifier>(typeof(IIImpl));
     this.code                  = new CEImpl();
     this.manufacturerModelName = new SCImpl <Code>();
     this.softwareName          = new SCImpl <Code>();
     this.asMaintainedEntity    = new List <Ca.Infoway.Messagebuilder.Model.Pcs_cda_r1_2.Basemodel.MaintainedEntity>();
 }
Exemplo n.º 29
0
 protected virtual void Start()
 {
     if (FindObjectsOfType <GM>().Length != 1)
     {
         throw new System.Exception("There has to be exactly one object of GM type");
     }
     inst = this;
     SC.Initialize();
 }
Exemplo n.º 30
0
        public void SelectDevice(int tagid)
        {
            foreach (DrawObject o in graphicsList)
            {
                switch (o.GetType().Name)
                {
                case "BOM":
                    BOM bomDevice = (BOM)o;
                    if (bomDevice.TagIDBase.Equals(tagid))
                    {
                        bomDevice.Selected = true;
                    }
                    break;

                case "AGMChannel":
                    AGMChannel agmDevice = (AGMChannel)o;
                    if (agmDevice.TagIDBase.Equals(tagid))
                    {
                        agmDevice.Selected = true;
                    }
                    break;

                case "AGMChannelDual":
                    AGMChannelDual agmDualDevice = (AGMChannelDual)o;
                    if (agmDualDevice.TagIDBase.Equals(tagid))
                    {
                        agmDualDevice.Selected = true;
                    }
                    break;

                case "TCM":
                    TCM tcm = (TCM)o;
                    if (tcm.TagIDBase.Equals(tagid))
                    {
                        tcm.Selected = true;
                    }
                    break;

                case "TVM":
                    TVM tvm = (TVM)o;
                    if (tvm.TagIDBase.Equals(tagid))
                    {
                        tvm.Selected = true;
                    }
                    break;

                case "SC":
                    SC sc = (SC)o;
                    if (sc.TagIDBase.Equals(tagid))
                    {
                        sc.Selected = true;
                    }
                    break;
                }
            }
        }
        private static void _PostSystemCommand(Window window, SC command)
        {
            IntPtr handle = new WindowInteropHelper(window).Handle;

            if (handle == IntPtr.Zero || !NativeMethods.IsWindow(handle))
            {
                return;
            }
            NativeMethods.PostMessage(handle, WM.SYSCOMMAND, new IntPtr((int)command), IntPtr.Zero);
        }
Exemplo n.º 32
0
        public override void SetPlugin(SC.Interfaces.IScPluginClient plugin)
        {
            if (plugin == null)
                throw new ArgumentNullException("plugin");
            else if (!(plugin is SC.Interfaces.DefaultPlugins.IManualControl))
                throw new ArgumentException("plugin");

            this.plugin = plugin as SC.Interfaces.DefaultPlugins.IManualControl;
            RefreshView();
        }
Exemplo n.º 33
0
        private static void PostSystemCommand(Window window, SC command)
        {
            var hwnd = new WindowInteropHelper(window).Handle;

            if (WindowHelper.IsWindowHandleValid(hwnd) == false)
            {
                return;
            }

            PInvoke.PostMessage(new HWND(hwnd), WM.SYSCOMMAND, (nuint)command, default);
Exemplo n.º 34
0
        public Activation(DateTime startTime, SC.Interfaces.DefaultPlugins.DurationType durationType, SC.Interfaces.DefaultPlugins.ISCTimeSpan duration, SC.Interfaces.DefaultPlugins.ISCTimeSpan repetitionTime)
        {
            if (new SCTimeSpan(repetitionTime) > SCTimeSpan.Zero && new SCTimeSpan(repetitionTime) <= new SCTimeSpan(duration))
                throw new ArgumentException("Repitition time must be larger than duration");

            this.startTime = startTime;
            this.duration = duration;
            this.durationType = durationType;
            this.repetitionTime = repetitionTime;
        }
Exemplo n.º 35
0
 private void PopulateSCList()
 {
     foreach (GameObject SC in allGameObjects)
     {
         if (SC.CompareTag("SpawnCollider"))
         {
             spawnColliders.Add(SC);
         }
     }
 }
Exemplo n.º 36
0
        private void GetCourses()
        {
            List <string> names = new List <string>();

            foreach (ShorashimCourse SC in Program.Shorashim_Courses)
            {
                names.Add(SC.get_CourseName());
            }
            CN.DataSource = names;
        }
Exemplo n.º 37
0
 public UdpManager(SC platform)
 {
     m_SorC = platform;
     m_Udp  = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);
     if (platform == SC.SERVER)
     {
         m_EndPort = new IPEndPoint(IPAddress.Parse(m_Ip), m_Port);
         m_Udp.Bind(m_EndPort);
     }
 }
Exemplo n.º 38
0
        public void License(SC.Interfaces.ILicensee licensee)
        {
            if (RequiresLicense(licensee))
            {
                Guid guid = Guid.NewGuid();
                while (licenses.ContainsKey(guid) || guid == Guid.Empty)
                    guid = Guid.NewGuid();

                SC.Interfaces.LicenseRequest req = GetLicenseRequest(licensee.GetType());
                string licName = req.LicenseName;

                bool valid = false;
                while (req != null)
                {
                    if (licenseinfos.ContainsKey(req.LicenseName))
                    {
                        LicenseInfo info = licenseinfos[req.LicenseName];
                        if (!(valid = info.Count > GetUsedLicenseCount(req.LicenseName)))
                        {
                            valid = false;
                            break;
                        }
                        else if (info.IsValid)
                        {
                            req = null;
                        }
                    }
                    else
                    {
                        valid = false;
                        req = null;
                    }
                }

                if (valid)
                {
                        Logger.Info("Granting license " + licName + " to " + licensee.ToString());
                        License lic = new License(guid, licName);
                        licensee.AssignLicense(lic);
                        licenses.Add(guid, lic);
                }
                else
                {
                        Logger.Info("No license " + licName + " available for " + licensee.ToString());
                        licensee.AssignLicense(new License(Guid.Empty, licName));
                }
            }
        }
Exemplo n.º 39
0
    /// <summary>
    /// Get input from the keyboard hook; return true if the key was handled
    /// and needs to be removed from the input chain.
    /// </summary>
    public static bool OnKey(WM ev, VK vk, SC sc, LLKHF flags)
    {
        // Remember when the user touched a key for the last time
        m_last_key_time = DateTime.Now;

        // Do nothing if we are disabled
        if (m_disabled)
        {
            return false;
        }

        int dead_key = SaveDeadKey();
        bool ret = OnKeyInternal(ev, vk, sc, flags);
        RestoreDeadKey(dead_key);

        return ret;
    }
Exemplo n.º 40
0
    /// <summary>
    /// Get input from the keyboard hook; return true if the key was handled
    /// and needs to be removed from the input chain.
    /// </summary>
    public static bool OnKey(WM ev, VK vk, SC sc, LLKHF flags)
    {
        // Remember when the user touched a key for the last time
        m_last_key_time = DateTime.Now;

        // Do nothing if we are disabled; NOTE: this disables stats, too
        if (Settings.Disabled.Value)
        {
            return false;
        }

        // We need to check the keyboard layout before we save the dead
        // key, otherwise we may be saving garbage.
        CheckKeyboardLayout();

        int dead_key = SaveDeadKey();
        bool ret = OnKeyInternal(ev, vk, sc, flags);
        RestoreDeadKey(dead_key);

        return ret;
    }
Exemplo n.º 41
0
 private static string VkToUnicode(VK vk, SC sc, byte[] keystate, LLKHF flags)
 {
     const int buflen = 4;
     byte[] buf = new byte[2 * buflen];
     int ret = NativeMethods.ToUnicode(vk, sc, keystate, buf, buflen, flags);
     if (ret > 0 && ret < buflen)
     {
         return Encoding.Unicode.GetString(buf, 0, ret * 2);
     }
     return "";
 }
Exemplo n.º 42
0
    private static Key VkToKey(VK vk, SC sc, LLKHF flags, bool has_shift,
                               bool has_altgr, bool has_capslock)
    {
        byte[] keystate = new byte[256];
        NativeMethods.GetKeyboardState(keystate);
        keystate[(int)VK.SHIFT] = (byte)(has_shift ? 0x80 : 0x00);
        keystate[(int)VK.CONTROL] = (byte)(has_altgr ? 0x80 : 0x00);
        keystate[(int)VK.MENU] = (byte)(has_altgr ? 0x80 : 0x00);
        keystate[(int)VK.CAPITAL] = (byte)(has_capslock ? 0x01 : 0x00);

        // These two calls must be done together and in this order.
        string str_if_normal = VkToUnicode(vk, sc, keystate, flags);
        string str_if_dead = VkToUnicode(VK.SPACE);

        if (str_if_dead != " ")
            return new Key(str_if_dead);

        // Special case: we don't consider characters such as Esc as printable
        // otherwise they are not properly serialised in the config file.
        if (str_if_normal == "" || str_if_normal[0] < ' ')
            return new Key(vk);

        return new Key(str_if_normal);
    }
Exemplo n.º 43
0
    private static bool OnKeyInternal(WM ev, VK vk, SC sc, LLKHF flags)
    {
        bool is_keydown = (ev == WM.KEYDOWN || ev == WM.SYSKEYDOWN);
        bool is_keyup = !is_keydown;
        bool add_to_sequence = is_keydown;
        bool is_capslock_hack = false;
        bool compose_is_altgr = m_possible_altgr_keys.Count > 0
                       && Settings.ComposeKey.Value.VirtualKey == VK.RMENU;

        bool has_shift = (NativeMethods.GetKeyState(VK.SHIFT) & 0x80) != 0;
        bool has_altgr = (NativeMethods.GetKeyState(VK.LCONTROL) &
                          NativeMethods.GetKeyState(VK.RMENU) & 0x80) != 0;
        bool has_lrshift = (NativeMethods.GetKeyState(VK.LSHIFT) &
                            NativeMethods.GetKeyState(VK.RSHIFT) & 0x80) != 0;
        bool has_capslock = NativeMethods.GetKeyState(VK.CAPITAL) != 0;

        // Guess what the system would print if we weren’t interfering. If
        // a printable representation exists, use that. Otherwise, default
        // to its virtual key code.
        Key key = VkToKey(vk, sc, flags, has_shift, has_altgr, has_capslock);

        // If Caps Lock is on, and the Caps Lock hack is enabled, we check
        // whether this key without Caps Lock gives a non-ASCII alphabetical
        // character. If so, we replace “result” with the lowercase or
        // uppercase variant of that character.
        if (has_capslock && Settings.CapsLockCapitalizes.Value)
        {
            Key alt_key = VkToKey(vk, sc, flags, has_shift, has_altgr, false);

            if (alt_key.IsPrintable() && alt_key.ToString()[0] > 0x7f)
            {
                string str_upper = alt_key.ToString().ToUpper();
                string str_lower = alt_key.ToString().ToLower();

                // Hack for German keyboards: it seems that ToUpper() does
                // not properly change ß into ẞ.
                if (str_lower == "ß")
                    str_upper = "ẞ";

                if (str_upper != str_lower)
                {
                    key = new Key(has_shift ? str_lower : str_upper);
                    is_capslock_hack = true;
                }
            }
        }

        // Update statistics
        if (is_keydown)
        {
            // Update single key statistics
            Stats.AddKey(key);

            // Update key pair statistics if applicable
            if (DateTime.Now < m_last_key_time.AddMilliseconds(2000)
                 && m_last_key != null)
            {
                Stats.AddPair(m_last_key, key);
            }

            // Remember when we pressed a key for the last time
            m_last_key_time = DateTime.Now;
            m_last_key = key;
        }

        // If the special Synergy window has focus, we’re actually sending
        // keystrokes to another computer; disable WinCompose.
        if (m_window_is_synergy)
        {
            return false;
        }

        // If we receive a keyup for the compose key while in emulation
        // mode, we’re done. Send a KeyUp event and exit emulation mode.
        if (is_keyup && key == Settings.ComposeKey.Value
             && CurrentState == State.Combination)
        {
            Log.Debug("Combination Off");
            CurrentState = State.Idle;
            m_compose_counter = 0;

            // If relevant, send an additional KeyUp for the opposite
            // key; experience indicates that it helps unstick some
            // applications such as mintty.exe.
            switch (Settings.ComposeKey.Value.VirtualKey)
            {
                case VK.LMENU: SendKeyUp(VK.RMENU); break;
                case VK.RMENU: SendKeyUp(VK.LMENU);
                               if (compose_is_altgr)
                                   SendKeyUp(VK.LCONTROL);
                               break;
                case VK.LSHIFT: SendKeyUp(VK.RSHIFT); break;
                case VK.RSHIFT: SendKeyUp(VK.LSHIFT); break;
                case VK.LCONTROL: SendKeyUp(VK.RCONTROL); break;
                case VK.RCONTROL: SendKeyUp(VK.LCONTROL); break;
            }

            return false;
        }

        // If this is the compose key and we’re idle, enter Sequence mode
        if (is_keydown && key == Settings.ComposeKey.Value
             && m_compose_counter == 0 && CurrentState == State.Idle)
        {
            Log.Debug("Now Composing");
            CurrentState = State.Sequence;
            ++m_compose_counter;

            // Lauch the sequence reset expiration thread
            // FIXME: do we need to launch a new thread each time the
            // compose key is pressed? Let's have a dormant thread instead
            if (Settings.ResetDelay.Value > 0)
            {
                new Thread(() =>
                {
                    while (CurrentState == State.Sequence &&
                            DateTime.Now < m_last_key_time.AddMilliseconds(Settings.ResetDelay.Value))
                        Thread.Sleep(50);
                    ResetSequence();
                }).Start();
            }

            return true;
        }

        // If this is a compose key KeyDown event and it’s already down, or it’s
        // a KeyUp and it’s already up, eat this event without forwarding it.
        if (key == Settings.ComposeKey.Value
             && is_keydown == ((m_compose_counter & 1) != 0))
        {
            return true;
        }

        // Escape and backspace cancel the current sequence
        if (is_keydown && CurrentState == State.Sequence
             && (key.VirtualKey == VK.ESCAPE || key.VirtualKey == VK.BACK))
        {
            // FIXME: if a sequence was in progress, maybe print it!
            Log.Debug("No Longer Composing");
            ResetSequence();
            return true;
        }

        // Feature: emulate capslock key with both shift keys, and optionally
        // disable capslock using only one shift key.
        if (key.VirtualKey == VK.LSHIFT || key.VirtualKey == VK.RSHIFT)
        {
            if (is_keyup && has_lrshift && Settings.EmulateCapsLock.Value)
            {
                SendKeyPress(VK.CAPITAL);
                return false;
            }

            if (is_keydown && has_capslock && Settings.ShiftDisablesCapsLock.Value)
            {
                SendKeyPress(VK.CAPITAL);
                return false;
            }
        }

        // If we are not currently composing a sequence, do nothing unless
        // one of our hacks forces us to send the key as a string (for
        // instance the Caps Lock capitalisation feature).
        if (CurrentState != State.Sequence)
        {
            if (is_capslock_hack && is_keydown)
            {
                SendString(key.ToString());
                return true;
            }

            // If this was a dead key, it will be completely ignored. But
            // it’s okay since we stored it.
            Log.Debug("Forwarding Key to System (not composing)");
            return false;
        }

        // If the compose key is down and the user pressed a new key, maybe
        // instead of composing they want to do a key combination, such as
        // Alt+Tab or Windows+Up. So we abort composing and send the KeyDown
        // event for the Compose key that we previously discarded. The same
        // goes for characters that need AltGr when AltGr is the compose key.
        //
        // Never do this if the event is KeyUp.
        // Never do this if we already started a sequence
        // Never do this if the key is a modifier key such as shift or alt.
        if (m_compose_counter == 1 && is_keydown
             && m_sequence.Count == 0 && !key.IsModifier())
        {
            bool keep_original = Settings.KeepOriginalKey.Value;
            bool key_unusable = !key.IsUsable();
            bool altgr_combination = compose_is_altgr &&
                        m_possible_altgr_keys.ContainsKey(key.ToString());

            if (keep_original || key_unusable || altgr_combination)
            {
                Log.Debug("Combination On");
                ResetSequence();
                if (compose_is_altgr)
                {
                    // It’s necessary to use KEYEVENTF_EXTENDEDKEY otherwise the system
                    // does not understand that we’re sending AltGr.
                    SendKeyDown(VK.LCONTROL);
                    SendKeyDown(VK.RMENU, KEYEVENTF.EXTENDEDKEY);
                }
                else
                {
                    SendKeyDown(Settings.ComposeKey.Value.VirtualKey);
                }
                CurrentState = State.Combination;
                return false;
            }
        }

        // If this is the compose key again, use our custom virtual key
        // FIXME: we don’t properly support compose keys that also normally
        // print stuff, such as `.
        if (key == Settings.ComposeKey.Value)
        {
            ++m_compose_counter;
            key = new Key(VK.COMPOSE);

            // If the compose key is AltGr, we only add it to the sequence
            // if it’s a KeyUp event, otherwise we may be adding Multi_key to the
            // sequence when the user actually wants to enter an AltGr char.
            if (compose_is_altgr && m_compose_counter > 2)
                add_to_sequence = is_keyup;
        }

        // If the compose key is AltGr and it’s down, check whether the current
        // key needs translating.
        if (compose_is_altgr && (m_compose_counter & 1) != 0)
        {
            string altgr_variant;
            if (m_possible_altgr_keys.TryGetValue(key.ToString(), out altgr_variant))
            {
                key = new Key(altgr_variant);
                // Do as if we already released Compose, otherwise the next KeyUp
                // event will cause VK.COMPOSE to be added to the sequence…
                ++m_compose_counter;
            }
        }

        // If the key can't be used in a sequence, just ignore it.
        if (!key.IsUsable())
        {
            Log.Debug("Forwarding Key to System (no possible sequence uses it)");
            return false;
        }

        // If we reached this point, everything else ignored this key, so it
        // is a key we must add to the current sequence.
        if (add_to_sequence)
        {
            Log.Debug("Adding to Sequence: {0}", key.FriendlyName);
            return AddToSequence(key);
        }

        return true;
    }
 public static void RemoveMenu(IntPtr hMenu, SC uPosition, MF uFlags)
 {
     if (!_RemoveMenu(hMenu, (uint)uPosition, (uint)uFlags))
     {
         throw new Win32Exception();
     }
 }
Exemplo n.º 45
0
 public RootClickedEventArgs(SC.Interfaces.IRoot root)
     : base(root)
 {
 }
Exemplo n.º 46
0
 public ServerTreeNode(SC.Interfaces.IRoot root, string serverName)
     : base(root)
 {
     this.Text = serverName;
 }
Exemplo n.º 47
0
 public StandalonePluginClickedEventArgs(SC.Interfaces.IRoot root, string pluginName)
     : base(root)
 {
     this.pluginName = pluginName;
 }
Exemplo n.º 48
0
        public override void AttachServer(SC.Interfaces.IPluginServer server)
        {
            base.AttachServer(server);

            server.ProcessChanged += new SC.Interfaces.ProcessChangedEvent(server_ProcessChanged);
        }
Exemplo n.º 49
0
 public StandalonePluginTreeNode(SC.Interfaces.IRoot root, string pluginName)
     : base(root)
 {
     this.Text = pluginName;
 }
Exemplo n.º 50
0
    private static bool OnKeyInternal(WM ev, VK vk, SC sc, LLKHF flags)
    {
        //CheckKeyboardLayout();

        bool is_keydown = (ev == WM.KEYDOWN || ev == WM.SYSKEYDOWN);
        bool is_keyup = !is_keydown;
        bool is_capslock_hack = false;

        bool has_shift = (NativeMethods.GetKeyState(VK.SHIFT) & 0x80) != 0;
        bool has_altgr = (NativeMethods.GetKeyState(VK.LCONTROL) &
                          NativeMethods.GetKeyState(VK.RMENU) & 0x80) != 0;
        bool has_lrshift = (NativeMethods.GetKeyState(VK.LSHIFT) &
                            NativeMethods.GetKeyState(VK.RSHIFT) & 0x80) != 0;
        bool has_capslock = NativeMethods.GetKeyState(VK.CAPITAL) != 0;

        // Guess what the system would print if we weren’t interfering. If
        // a printable representation exists, use that. Otherwise, default
        // to its virtual key code.
        Key key = VkToKey(vk, sc, flags, has_shift, has_altgr, has_capslock);

        // If Caps Lock is on, and the Caps Lock hack is enabled, we check
        // whether this key without Caps Lock gives a non-ASCII alphabetical
        // character. If so, we replace “result” with the lowercase or
        // uppercase variant of that character.
        if (has_capslock && Settings.CapsLockCapitalizes.Value)
        {
            Key alt_key = VkToKey(vk, sc, flags, has_shift, has_altgr, false);

            if (alt_key.IsPrintable() && alt_key.ToString()[0] > 0x7f)
            {
                string str_upper = alt_key.ToString().ToUpper();
                string str_lower = alt_key.ToString().ToLower();
                if (str_upper != str_lower)
                {
                    key = new Key(has_shift ? str_lower : str_upper);
                    is_capslock_hack = true;
                }
            }
        }

        // Update statistics
        if (is_keydown)
        {
            // Update single key statistics
            Stats.AddKey(key);

            // Update key pair statistics if applicable
            if (DateTime.Now < m_last_key_time.AddMilliseconds(2000)
                 && m_last_key != null)
            {
                Stats.AddPair(m_last_key, key);
            }

            // Remember when we pressed a key for the last time
            m_last_key_time = DateTime.Now;
            m_last_key = key;
        }

        // FIXME: we don’t properly support compose keys that also normally
        // print stuff, such as `.
        if (key == Settings.ComposeKey.Value)
        {
            // If we receive a keyup for the compose key while in emulation
            // mode, we’re done. Send a KeyUp event and exit emulation mode.
            if (is_keyup && CurrentState == State.Combination)
            {
                Log.Debug("Combination Off");
                CurrentState = State.Idle;
                m_compose_down = false;

                // If relevant, send an additional KeyUp for the opposite
                // key; experience indicates that it helps unstick some
                // applications such as mintty.exe.
                switch (Settings.ComposeKey.Value.VirtualKey)
                {
                    case VK.LMENU: SendKeyUp(VK.RMENU); break;
                    case VK.RMENU: SendKeyUp(VK.LMENU); break;
                    case VK.LSHIFT: SendKeyUp(VK.RSHIFT); break;
                    case VK.RSHIFT: SendKeyUp(VK.LSHIFT); break;
                    case VK.LCONTROL: SendKeyUp(VK.RCONTROL); break;
                    case VK.RCONTROL: SendKeyUp(VK.LCONTROL); break;
                }

                return false;
            }

            if (is_keydown && !m_compose_down)
            {
                // FIXME: we don't want compose + compose to disable composing,
                // since there are compose sequences that use Multi_key.
                switch (CurrentState)
                {
                    case State.Sequence:
                        // FIXME: also, if a sequence was in progress, print it!
                        CurrentState = State.Idle;
                        m_sequence.Clear();
                        break;
                    case State.Idle:
                        CurrentState = State.Sequence;
                        // Lauch the sequence reset expiration thread
                        // FIXME: do we need to launch a new thread each time the
                        // compose key is pressed? Let's have a dormant thread instead
                        if (Settings.ResetDelay.Value > 0)
                        {
                            new Thread(() =>
                            {
                                while (CurrentState == State.Sequence &&
                                        DateTime.Now < m_last_key_time.AddMilliseconds(Settings.ResetDelay.Value))
                                    Thread.Sleep(50);
                                ResetSequence();
                            }).Start();
                        }
                        break;
                }

                Log.Debug("{0} Composing", IsComposing() ? "Now" : "No Longer");
            }

            m_compose_down = is_keydown;

            return true;
        }

        // Feature: emulate capslock key with both shift keys, and optionally
        // disable capslock using only one shift key.
        if (key.VirtualKey == VK.LSHIFT || key.VirtualKey == VK.RSHIFT)
        {
            if (is_keyup && has_lrshift && Settings.EmulateCapsLock.Value)
            {
                SendKeyPress(VK.CAPITAL);
                return false;
            }

            if (is_keydown && has_capslock && Settings.ShiftDisablesCapsLock.Value)
            {
                SendKeyPress(VK.CAPITAL);
                return false;
            }
        }

        // If we are not currently composing a sequence, do nothing unless
        // one of our hacks forces us to send the key as a string (for
        // instance the Caps Lock capitalisation feature).
        if (CurrentState != State.Sequence)
        {
            if (is_capslock_hack && is_keydown)
            {
                SendString(key.ToString());
                return true;
            }

            // If this was a dead key, it will be completely ignored. But
            // it’s okay since we stored it.
            return false;
        }

        // If the compose key is down and the user pressed a new key, maybe
        // they want to do a key combination instead of composing, such as
        // Alt+Tab or Windows+Up. So we abort composing and send the KeyDown
        // event for the Compose key that we previously discarded.
        //
        // Never do this if the event is KeyUp.
        // Never do this if we already started a sequence
        // Never do this if the key is a modifier key such as shift or alt.
        if (m_compose_down && is_keydown
             && m_sequence.Count == 0 && !key.IsModifier()
             && (Settings.KeepOriginalKey.Value || !key.IsUsable()))
        {
            Log.Debug("Combination On");
            ResetSequence();
            SendKeyDown(Settings.ComposeKey.Value.VirtualKey);
            CurrentState = State.Combination;
            return false;
        }

        // If the key can't be used in a sequence, just ignore it.
        if (!key.IsUsable())
        {
            return false;
        }

        // If we reached this point, everything else ignored this key, so it
        // is a key we must add to the current sequence.
        if (is_keydown)
        {
            Log.Debug("Adding To Sequence: {0}", key.FriendlyName);
            return AddToSequence(key);
        }

        return true;
    }
Exemplo n.º 51
0
 public ServerPluginClickedEventArgs(SC.Interfaces.IRoot root, string serverName, string pluginName)
     : base(root)
 {
     this.serverName = serverName;
     this.pluginName = pluginName;
 }
Exemplo n.º 52
0
 public ServerPluginTreeNode(SC.Interfaces.IRoot root, string serverName, string pluginName)
     : base(root)
 {
     this.serverName = serverName;
     this.Text = pluginName;
 }
Exemplo n.º 53
0
 public ProcessChangedEventArgs(SC.Interfaces.IProcess newProcess)
 {
     process = newProcess;
 }
Exemplo n.º 54
0
        private void updateConf_Click(object sender, EventArgs e)
        {
             confWorking = true;
             newCfgLabel.Text = "Дождитесь завершения операции обновления...";
           
        
            switch (newCfgText.Text)
            {
                case "ДИНРУС КОНСОЛЬ ОДИНОЧНАЯ":
                   scIniText.Lines =new string[]
                   {
"[Version]",
"version=7.51 Build 020",
"","#DINRUS CONSOLE SINGLE", "",
"[Environment]",
"PATH=%PATH%;%DINRUS%;%BIN%",
"BIN=\"%@P%\\..\\bin\"",
"INCLUDE=\"%@P%\\..\\include\";%INCLUDE%",
"LIB=\"%@P%\\..\\lib\";\"%@P%\\..\\lib\\rulada\";\"%@P%\\..\\lib\\c\";\"%@P%\\..\\lib\\sysimport\";%LIB%",
"DFLAGS=\"-I%@P%\\..\\imp\\dinrus\" -O -version=Dinrus -defaultlib=dinrus.lib -debuglib=dinrus.lib", 
"LINKCMD=%@P%\\dmlink.exe"          
                   };     cf = SC.DCA;
                    break;

                case "РУЛАДА1 КОНСОЛЬ ОДИНОЧНАЯ":
                    scIniText.Lines = new string[]
                   {
"[Version]",
"version=7.51 Build 020",
"","#RULADA1 CONSOLE SINGLE", "",
"[Environment]",
"PATH=%PATH%;%DINRUS%;%BIN%",
"BIN=\"%@P%\\..\\bin\"",
"INCLUDE=\"%@P%\\..\\include\";%INCLUDE%",
"LIB=\"%@P%\\..\\lib\";\"%@P%\\..\\lib\\rulada\";\"%@P%\\..\\lib\\c\";\"%@P%\\..\\lib\\sysimport\";%LIB%",
"DFLAGS=\"-I%@P%\\..\\imp\\rulada\" -O -version=Rulada -defaultlib=rulada.lib -debuglib=rulada.lib", 
"LINKCMD=%@P%\\dmlink.exe"          
                   };        cf =SC.R1CA;
                    break;

                case "РУЛАДА2 КОНСОЛЬ ОДИНОЧНАЯ":
                    scIniText.Lines = new string[]
                   {
"[Version]",
"version=7.51 Build 020",
"","#RULADA2 CONSOLE SINGLE", "",
"[Environment]",
"PATH=%PATH%;%DINRUS%;%BIN%",
"BIN=\"%@P%\\..\\bin\"",
"INCLUDE=\"%@P%\\..\\include\";%INCLUDE%",
"LIB=\"%@P%\\..\\lib\";\"%@P%\\..\\lib\\rulada\";\"%@P%\\..\\lib\\c\";\"%@P%\\..\\lib\\sysimport\";%LIB%",
"DFLAGS=\"-I%@P%\\..\\imp\\rulada\" -O -version=Dinrus -defaultlib=rulada.lib -debuglib=rulada.lib", 
"LINKCMD=%@P%\\dmlink.exe"          
                   }; cf =SC.R2CA;
                    break;

                case "ДИНРУС КОНСОЛЬ ПОЛНАЯ":
                    scIniText.Lines = new string[]
                   {
"[Version]",
"version=7.51 Build 020",
"","#DINRUS CONSOLE FULL", "",
"[Environment]",
"PATH=%PATH%;%DINRUS%;%BIN%",
"BIN=\"%@P%\\..\\bin\"",
"INCLUDE=\"%@P%\\..\\include\";%INCLUDE%",
"LIB=\"%@P%\\..\\lib\";\"%@P%\\..\\lib\\rulada\";\"%@P%\\..\\lib\\c\";\"%@P%\\..\\lib\\sysimport\";%LIB%",
"DFLAGS=\"-I%@P%\\..\\imp\\dinrus\" -O -version=Dinrus -defaultlib=dinrus.lib -debuglib=dinrus.lib -L+DRwin32.lib", 
"LINKCMD=%@P%\\dmlink.exe"          
                   }; cf = SC.DWF;
                    break;

                case "РУЛАДА1 КОНСОЛЬ ПОЛНАЯ":
                    scIniText.Lines = new string[]
                   {
"[Version]",
"version=7.51 Build 020",
"","#RULADA1 CONSOLE FULL", "",
"[Environment]",
"PATH=%PATH%;%DINRUS%;%BIN%",
"BIN=\"%@P%\\..\\bin\"",
"INCLUDE=\"%@P%\\..\\include\";%INCLUDE%",
"LIB=\"%@P%\\..\\lib\";\"%@P%\\..\\lib\\rulada\";\"%@P%\\..\\lib\\c\";\"%@P%\\..\\lib\\sysimport\";%LIB%",
"DFLAGS=\"-I%@P%\\..\\imp\\rulada\" -O -version=Rulada -defaultlib=rulada.lib -debuglib=rulada.lib -L+derelict.lib+tango.lib+auxc.lib+auxd.lib+amigos.lib+arc.lib+gtkD.lib", 
"LINKCMD=%@P%\\dmlink.exe"          
                   }; cf= SC.R1CF;
                    break;

                case "РУЛАДА2 КОНСОЛЬ ПОЛНАЯ":
                    scIniText.Lines = new string[]
                   {
"[Version]",
"version=7.51 Build 020",
"","#RULADA2 CONSOLE FULL", "",
"[Environment]",
"PATH=%PATH%;%DINRUS%;%BIN%",
"BIN=\"%@P%\\..\\bin\"",
"INCLUDE=\"%@P%\\..\\include\";%INCLUDE%",
"LIB=\"%@P%\\..\\lib\";\"%@P%\\..\\lib\\rulada\";\"%@P%\\..\\lib\\c\";\"%@P%\\..\\lib\\sysimport\";%LIB%",
"DFLAGS=\"-I%@P%\\..\\imp\\rulada\" -O -version=Rulada -defaultlib=rulada.lib -debuglib=rulada.lib -L+derelict.lib+tango.lib+auxc.lib+auxd.lib+amigos.lib+arc.lib+gtkD.lib", 
"LINKCMD=%@P%\\dmlink.exe"          
                   }; cf = SC.R2CF;
                    break;

                case "ДИНРУС ОКНО ОДИНОЧНАЯ":
                    scIniText.Lines = new string[]
                   {
"[Version]",
"version=7.51 Build 020",
"","#DINRUS WINDOW SINGLE", "",
"[Environment]",
"PATH=%PATH%;%DINRUS%;%BIN%",
"BIN=\"%@P%\\..\\bin\"",
"INCLUDE=\"%@P%\\..\\include\";%INCLUDE%",
"LIB=\"%@P%\\..\\lib\";\"%@P%\\..\\lib\\rulada\";\"%@P%\\..\\lib\\c\";\"%@P%\\..\\lib\\sysimport\";%LIB%",
"DFLAGS=\"-I%@P%\\..\\imp\\dinrus\" -O -version=Dinrus -defaultlib=dinrus.lib -debuglib=dinrus.lib -L/exet:nt/su:windows:5.0", 
"LINKCMD=%@P%\\dmlink.exe"          
                   }; cf = SC.DWA;
                    break;

                case "РУЛАДА1 ОКНО ОДИНОЧНАЯ":
                    scIniText.Lines = new string[]
                   {
"[Version]",
"version=7.51 Build 020",
"","#RULADA1 WINDOW SINGLE", "",
"[Environment]",
"PATH=%PATH%;%DINRUS%;%BIN%",
"BIN=\"%@P%\\..\\bin\"",
"INCLUDE=\"%@P%\\..\\include\";%INCLUDE%",
"LIB=\"%@P%\\..\\lib\";\"%@P%\\..\\lib\\rulada\";\"%@P%\\..\\lib\\c\";\"%@P%\\..\\lib\\sysimport\";%LIB%",
"DFLAGS=\"-I%@P%\\..\\imp\\rulada\" -O -version=Dinrus -defaultlib=dinrus.lib -debuglib=dinrus.lib", 
"LINKCMD=%@P%\\dmlink.exe"          
                   };  cf = SC.R1WA;
                    break;

                case "РУЛАДА2 ОКНО ОДИНОЧНАЯ":
                    scIniText.Lines = new string[]
                   {
"[Version]",
"version=7.51 Build 020",
"","#RULADA1 WINDOW SINGLE", "",
"[Environment]",
"PATH=%PATH%;%DINRUS%;%BIN%",
"BIN=\"%@P%\\..\\bin\"",
"INCLUDE=\"%@P%\\..\\include\";%INCLUDE%",
"LIB=\"%@P%\\..\\lib\";\"%@P%\\..\\lib\\rulada\";\"%@P%\\..\\lib\\c\";\"%@P%\\..\\lib\\sysimport\";%LIB%",
"DFLAGS=\"-I%@P%\\..\\imp\\rulada\" -O -version=Dinrus -defaultlib=dinrus.lib -debuglib=dinrus.lib", 
"LINKCMD=%@P%\\dmlink.exe"          
                   }; cf = SC.R2WA;
                    break;

                case "ДИНРУС ОКНО ПОЛНАЯ":
                    scIniText.Lines = new string[]
                   {
"[Version]",
"version=7.51 Build 020",
"","#DINRUS WINDOW FULL", "",
"[Environment]",
"PATH=%PATH%;%DINRUS%;%BIN%",
"BIN=\"%@P%\\..\\bin\"",
"INCLUDE=\"%@P%\\..\\include\";%INCLUDE%",
"LIB=\"%@P%\\..\\lib\";\"%@P%\\..\\lib\\rulada\";\"%@P%\\..\\lib\\c\";\"%@P%\\..\\lib\\sysimport\";%LIB%",
"DFLAGS=\"-I%@P%\\..\\imp\\dinrus\" -O -version=Dinrus -defaultlib=dinrus.lib -debuglib=dinrus.lib -L+DRwin32.lib -L/exet:nt/su:windows:5.0", 
"LINKCMD=%@P%\\dmlink.exe"          
                   }; cf = SC.DWF;
                    break;

                case "РУЛАДА1 ОКНО ПОЛНАЯ":
                    scIniText.Lines = new string[]
                   {
"[Version]",
"version=7.51 Build 020",
"","#RULADA1 WINDOW FULL", "",
"[Environment]",
"PATH=%PATH%;%DINRUS%;%BIN%",
"BIN=\"%@P%\\..\\bin\"",
"INCLUDE=\"%@P%\\..\\include\";%INCLUDE%",
"LIB=\"%@P%\\..\\lib\";\"%@P%\\..\\lib\\rulada\";\"%@P%\\..\\lib\\c\";\"%@P%\\..\\lib\\sysimport\";%LIB%",
"DFLAGS=\"-I%@P%\\..\\imp\\rulada\" -O -version=Rulada -defaultlib=rulada.lib -debuglib=rulada.lib -L+derelict.lib+auxc.lib+tango.lib+auxd.lib+amigos.lib+arc.lib+gtkD.lib -L/exet:nt/su:windows:5.0 ", 
"LINKCMD=%@P%\\dmlink.exe"          
                   }; cf = SC.R1WF;
                    break;

                case "РУЛАДА2 ОКНО ПОЛНАЯ":
                    scIniText.Lines = new string[]
                   {
"[Version]",
"version=7.51 Build 020",
"","#RULADA2 WINDOW FULL", "",
"[Environment]",
"PATH=%PATH%;%DINRUS%;%BIN%",
"BIN=\"%@P%\\..\\bin\"",
"INCLUDE=\"%@P%\\..\\include\";%INCLUDE%",
"LIB=\"%@P%\\..\\lib\";\"%@P%\\..\\lib\\rulada\";\"%@P%\\..\\lib\\c\";\"%@P%\\..\\lib\\sysimport\";%LIB%",
"DFLAGS=\"-I%@P%\\..\\imp\\rulada\" -O -version=Rulada -defaultlib=rulada.lib -debuglib=rulada.lib -L+derelict.lib+auxc.lib+tango.lib+auxd.lib+amigos.lib+arc.lib+gtkD.lib -L/exet:nt/su:windows:5.0 ", 
"LINKCMD=%@P%\\dmlink.exe"          
                   }; cf = SC.R2WF;
                    break;            

            }

/*
            System.IO.StreamWriter SW = new System.IO.StreamWriter(new System.IO.FileStream(file, System.IO.FileMode.Create, System.IO.FileAccess.Write), System.Text.Encoding.Default);
            

                foreach (string line in scIniText.Lines)
                {

                    {
                        SW.WriteLine(line);
                    }
                }

                SW.Close();

                Cursor.Current = Cursors.WaitCursor;
                 
      if (cf == SC.R1CA || cf == SC.R1CF ||cf == SC.R1WA || cf == SC.R1WF)
           {

               if (File.Exists(DINRUS + @"\\..\\imp\\rulada\\Версия_1.txt") && File.Exists(DINRUS + @"\\..\\lib\\rulada\\rulada.lib"))
               {
                   goto notifyOK;

               }

             if (Directory.Exists(DINRUS + @"\\..\\imp\\rulada"))
            {
                Directory.Delete(DINRUS + @"\\..\\imp\\rulada", true);
                newCfgLabel.Text = "Удаляется папка импорта ...";
            }

          //  byte[] imp = File.ReadAllBytes(DINRUS +@"\\..\\repos\\rulada1_imp.7z");
            
             
            using( var extr = new BestCS.Compression.SevenZip.SevenZipExtractor(DINRUS +@"\\..\\repos\\rulada1_imp.7z"))
            {
                //извлечь импорт
                
                newCfgLabel.Text = "Извлечение файлов ...";
                try
                {
                    extr.ExtractArchive(DINRUS + @"\\..\\imp");                   
                    
                    cf = 0;
                }
                catch (Exception exc) { newCfgLabel.Text = exc.ToString(); return; }
                
            }
            
            
            if (Directory.Exists(DINRUS + @"\\..\\lib\\rulada"))
                Directory.Delete(DINRUS + @"\\..\\lib\\rulada", true);
            Directory.CreateDirectory(DINRUS + @"\\..\\lib\\rulada");
           // imp = File.ReadAllBytes(DINRUS + @"\\..\\repos\\rulada1_imp.7z");
            newCfgLabel.Text = "Замена библиотек импорта ...";
            
            using (var extr = new BestCS.Compression.SevenZip.SevenZipExtractor(DINRUS + @"\\..\\repos\\rulada1_libs.7z"))
            {
                try{
                    //извлечь библиотеки
                    extr.ExtractArchive(DINRUS + @"\\..\\lib\\rulada");
                    
                    cf = 0;
                }
                catch (Exception exc) { newCfgLabel.Text = exc.ToString(); return; }
                
            }

            
        }

      else if (cf == SC.R2CA || cf == SC.R2CF || cf == SC.R2WA || cf == SC.R2WF)
           {

               if (File.Exists(DINRUS + @"\\..\\imp\\rulada\\Версия_2.txt") && File.Exists(DINRUS + @"\\..\\lib\\rulada\\rulada.lib"))
            {
                goto notifyOK;
            }
            
            if (Directory.Exists(DINRUS + @"\\..\\imp\\rulada"))
            {
                Directory.Delete(DINRUS + @"\\..\\imp\\rulada", true);
                newCfgLabel.Text = "Удаляется папка импорта ...";
            }

           // byte[] imp = File.ReadAllBytes(DINRUS +@"\\..\\repos\\rulada2_imp.7z");
            
            //удалить папку импорта Рулады
            
            using( var extr = new BestCS.Compression.SevenZip.SevenZipExtractor(DINRUS +@"\\..\\repos\\rulada2_imp.7z"))
            {
                //извлечь импорт
                
                newCfgLabel.Text = "Извлечение файлов ...";
                try
                {
                    extr.ExtractArchive(DINRUS + @"\\..\\imp");                   
                    
                    cf = 0;
                }
                catch (Exception exc) { newCfgLabel.Text = exc.ToString(); return; }
                
            }
            
            
            if (Directory.Exists(DINRUS + @"\\..\\lib\\rulada"))
                Directory.Delete(DINRUS + @"\\..\\lib\\rulada", true);
            Directory.CreateDirectory(DINRUS + @"\\..\\lib\\rulada");
          //  imp = File.ReadAllBytes(DINRUS + @"\\..\\repos\\rulada2_libs.7z");
            newCfgLabel.Text = "Замена библиотек импорта ...";
            
            using (var extr = new BestCS.Compression.SevenZip.SevenZipExtractor(DINRUS + @"\\..\\repos\\rulada2_libs.7z"))
            {
                try{
                    //извлечь библиотеки
                    extr.ExtractArchive(DINRUS + @"\\..\\lib\\rulada");
                    
                    cf = 0;
                }
                catch (Exception exc) { newCfgLabel.Text = exc.ToString(); return; }
                
            }

        }
      Cursor.Current = Cursors.Arrow;

       notifyOK:
            confWorking = false;
             newCfgLabel.Text = "Конфигурация обновлена";
             newCfgText.Visible = false;
             updateConf.Visible = false;
             lolGifPB.Visible = true;
             closeBtn.Visible = true;*/
        }
Exemplo n.º 55
0
 void server_ProcessChanged(object sender, SC.Interfaces.ProcessChangedEventArgs args)
 {
     doSet = true;
 }
Exemplo n.º 56
0
 public SecurityManagerClickedEventArgs(SC.Interfaces.IRoot root)
     : base(root)
 {
 }
 public static MF EnableMenuItem(IntPtr hMenu, SC uIDEnableItem, MF uEnable)
 {
     // Returns the previous state of the menu item, or -1 if the menu item does not exist.
     int iRet = _EnableMenuItem(hMenu, uIDEnableItem, uEnable);
     return (MF)iRet;
 }
Exemplo n.º 58
0
 public SecurityManagerTreeNode(SC.Interfaces.IRoot root)
     : base(root)
 {
     this.Text = "Security Manager";
 }
 private static extern int _EnableMenuItem(IntPtr hMenu, SC uIDEnableItem, MF uEnable);
Exemplo n.º 60
0
 public ServerClickedEventArgs(SC.Interfaces.IRoot root, string serverName)
     : base(root)
 {
     this.serverName = serverName;
 }