src/actions.h

Go to the documentation of this file.
00001 // Copyright (c) 2003 - 2004 Anselm R. Garbe <anselmg at t-online.de>
00002 // See ../LICENSE.txt for license details.
00003 //
00004 // $Id: actions.h 7 2007-05-24 11:03:53Z eg1981 $
00005 
00006 #ifndef __ACTIONS_H
00007 #define __ACTIONS_H
00008 
00009 #include "singleton.h"
00010 
00011 #include <map>
00012 #include "ncwm.h"
00013 
00014 class Action;
00015 
00016 class Bindings;
00017 class Kernel;
00018 class Monitor;
00019 
00020 typedef map<string, Action *, less<string> > MBindings;
00021 
00026 class Actions : public Singleton<Actions>
00027 {
00028 
00029 public:
00030     Actions();
00031     ~Actions();
00032 
00033     void initInternActions(MBindings *actionBindings);
00034 
00035     // new macro record stuff
00036     void beginChainRecord(Action *caller, const char *argument);
00037     void endChainRecord(Action *caller, const char *argument);
00038     void endScriptRecord(Action *caller, const char *argument);
00039     void cancelRecord(Action *caller, const char *argument);
00040 
00041     // intern actions
00042     void quit(Action *caller, const char *argument);
00043     void restart(Action *caller, const char *argument);
00044 
00045     void rehash(Action *caller, const char *argument);
00046 
00047     void circulateWindowsUp(Action *caller, const char *argument);
00048 
00049     void toggleClientMode(Action *caller, const char *argument);
00050     void toggleClientSticky(Action *caller, const char *argument);
00051     void executeTerm(Action *caller, const char *command);
00052 
00053     void growLeft(Action *caller, const char *argument);
00054     void growRight(Action *caller, const char *argument);
00055     void growUp(Action *caller, const char *argument);
00056     void growDown(Action *caller, const char *argument);
00057 
00058     void shrinkLeft(Action *caller, const char *argument);
00059     void shrinkRight(Action *caller, const char *argument);
00060     void shrinkUp(Action *caller, const char *argument);
00061     void shrinkDown(Action *caller, const char *argument);
00062 
00063     void moveClientLeft(Action *caller, const char *argument);
00064     void moveClientRight(Action *caller, const char *argument);
00065     void moveClientUp(Action *caller, const char *argument);
00066     void moveClientDown(Action *caller, const char *argument);
00067 
00068     void showBars(Action *caller, const char *argument);
00069     void hideBars(Action *caller, const char *argument);
00070     void toggleBar(Action *caller, const char *argument);
00071     void toggleBorder(Action *caller, const char *argument);
00072     void showBorders(Action *caller, const char *argument);
00073     void hideBorders(Action *caller, const char *argument);
00074     void toggleStatusBar(Action *caller, const char *argument);
00075     void toggleClientBar(Action *caller, const char *argument);
00076     void inputMode(Action *caller, const char *argument);
00077     void toggleMode(Action *caller, const char *argument);
00078 
00079     void killClient(Action *caller, const char *argument);
00080 
00081     void cycleClientNext(Action *caller, const char *argument);
00082     void cycleWorkspaceNext(Action *caller, const char *argument);
00083     void cycleClientPrev(Action *caller, const char *argument);
00084     void cycleWorkspacePrev(Action *caller, const char *argument);
00085 
00086     void joinFrameLeft(Action *caller, const char *argument);
00087     void joinFrameRight(Action *caller, const char *argument);
00088     void joinFrameUp(Action *caller, const char *argument);
00089     void joinFrameDown(Action *caller, const char *argument);
00090 
00091     void sendClientLeft(Action *caller, const char *argument);
00092     void sendClientRight(Action *caller, const char *argument);
00093     void sendClientUp(Action *caller, const char *argument);
00094     void sendClientDown(Action *caller, const char *argument);
00095 
00096     void splitFrameLeft(Action *caller, const char *argument);
00097     void splitFrameRight(Action *caller, const char *argument);
00098     void splitFrameUp(Action *caller, const char *argument);
00099     void splitFrameDown(Action *caller, const char *argument);
00100 
00101     void attachClient(Action *caller, const char *argument);
00102     void attachLastClient(Action *caller, const char *argument);
00103     void detachClient(Action *caller, const char *argument);
00104     void detachAllClients(Action *caller, const char *argument);
00105     void attachAllClients(Action *caller, const char *argument);
00106 
00107     void createAction(Action *caller, const char *argument);
00108     void createWorkspace(Action *caller, const char *argument);
00109 
00110     void destroyAction(Action *caller, const char *argument);
00111     void destroyFrame(Action *caller, const char *argument);
00112     void destroyWorkspace(Action *caller, const char *argument);
00113 
00114     void bindShortcut(Action *caller, const char *argument);
00115 
00116     void renameWorkspace(Action *caller, const char *argument);
00117     void selectWorkspace(Action *caller, const char *argument);
00118     void selectMonitor(Action *caller, const char *argument);
00119     void selectClient(Action *caller, const char *argument);
00120     void selectClientId(Action *caller, const char *argument);
00121 
00122     void selectFrameLeft(Action *caller, const char *argument);
00123     void selectFrameRight(Action *caller, const char *argument);
00124     void selectFrameUp(Action *caller, const char *argument);
00125     void selectFrameDown(Action *caller, const char *argument);
00126 
00127     void swapFrameLeft(Action *caller, const char *argument);
00128     void swapFrameRight(Action *caller, const char *argument);
00129     void swapFrameUp(Action *caller, const char *argument);
00130     void swapFrameDown(Action *caller, const char *argument);
00131 
00132     void swapClientLeft(Action *caller, const char *argument);
00133     void swapClientRight(Action *caller, const char *argument);
00134     void swapClientUp(Action *caller, const char *argument);
00135     void swapClientDown(Action *caller, const char *argument);
00136 
00137 #ifdef SLOT_SUPPORT
00138     void unslotClient(Action *caller, const char *argument);
00139     void slotClient(Action *caller, const char *argument);
00140     void toggleSlot(Action *caller, const char *argument);
00141     void cycleSlotTabPrev(Action *caller, const char *argument);
00142     void cycleSlotTabNext(Action *caller, const char *argument);
00143     void killSlotClient(Action *caller, const char *argument);
00144 #endif // SLOT_SUPPORT
00145 
00146     void toggleMaximization(Action *caller, const char *argument);
00147     void toggleShortcuts(Action *caller, const char *argument);
00148 
00149     void lower(Action *caller, const char *argument);
00150     void raise(Action *caller, const char *argument);
00151     void saveSettings(Action *caller, const char *argument);
00152 
00153     // extern actions only use execute
00154     void execute(Action *caller, const char *command);
00155 
00156     // map sequences only use sequences
00157     void sequence(Action *caller, const char *command);
00158 
00159     void hookClient(Action *caller, const char *argument);
00160     void unhookClient(Action *caller, const char *argument);
00161     void fitClient(Action *caller, const char *argument);
00162     void banish(Action *caller, const char *argument);
00163     void toggleClientBarMode(Action *caller, const char *argument);
00164     void toggleSloppyMode(Action *caller, const char *argument);
00165     void grabMove(Action *caller, const char *argument);
00166     void toggleTiled(Action *caller, const char *argument);
00167     void zoomClient(Action *caller, const char *argument);
00168 };
00169 
00170 #endif // __ACTIONS_H

Generated on Thu May 24 15:19:31 2007 for ncwm by  doxygen 1.5.1