/* GRTOGGLE (STD) -- Toggle Input Grid */ /* GRTOGGLE (STD) -- Eingaberaster freigeben/einhalten */ /* -- INTENDED FOR KEY-CALL USE (:Grid Switch) -- */ /* // Copyright (c) 1998-2012 Oliver Bartels F+E, Muenchen // Author: Roman Ludwig // Changes History: // rl (120427) RELEASED FOR BAE V7.8. // rl (101019) RELEASED FOR BAE V7.6. // rl (091021) RELEASED FOR BAE V7.4. // rl (081014) RELEASED FOR BAE V7.2. // rl (071029) RELEASED FOR BAE V7.0. // rl (060829) RELEASED FOR BAE V6.8. // rl (050906) RELEASED FOR BAE V6.6. // rl (040811) RELEASED FOR BAE V6.4. // rl (030904) RELEASED FOR BAE V6.2. // rl (021209) RELEASED FOR BAE V6.0. // rl (020618) RELEASED FOR BAE V5.4. // rl (010625) RELEASED FOR BAE V5.0. // rl (000509) RELEASED FOR BAE V4.6. // rl (990625) RELEASED FOR BAE V4.4. // rl (980910) RELEASED FOR BAE V4.2. // mb (980707) CHANGE: // Unreferenced local variable gridlock removed from main. // mb (980420) CHANGE: // Inline documentation changed. // rl (980331) ORIGINAL CODING. // // DESCRIPTION // // The grtoggle User Language program toggles the currently // selected input grid mode between gridless and grid locked. // The angle lock flag is restored when switching to grid // locked mode. This program is intended for implicit hotkey // program call (e.g. or ). */ // Includes #include "std.ulh" // User Language standard include // Disable undo state request #pragma ULCALLERNOUNDO // Variable names #define GV_INP_ANGLOCK "INP_ANGLOCK" // Input grid lock flag // Main program void main() { int anglock /* Input angle lock flag */; // Get the current grid lock flag if (bae_getgridlock()) { // Store current angle lock flag varset(GV_INP_ANGLOCK,bae_getanglelock()); // Switch to gridless input bae_setanglelock(0); bae_setgridlock(0); } else { // Check if angle lock flag stored if (varget(GV_INP_ANGLOCK,anglock)==0) // Restore the angle lock flag bae_setanglelock(anglock); // Switch to grid locked input bae_setgridlock(1); } // Done } // User Language program end