#ifndef COMMANDBUTTON_CLOSE # define COMMANDBUTTON_CLOSE 1 # define COMMANDBUTTON_APPLY 2 //# define COMMANDBUTTON_REVERT 4 #endif #ifdef INTERFACE CLASS(VoretCommandButton) EXTENDS(VoretButton) METHOD(VoretCommandButton, configureVoretCommandButton, void(entity, string, vector, string, float)) ATTRIB(VoretCommandButton, onClickCommand, string, string_null) ATTRIB(VoretCommandButton, flags, float, 0) ENDCLASS(VoretCommandButton) entity makeVoretCommandButton(string theText, vector theColor, string theCommand, float closesMenu); #endif #ifdef IMPLEMENTATION entity makeVoretCommandButton(string theText, vector theColor, string theCommand, float theFlags) { entity me; me = spawnVoretCommandButton(); me.configureVoretCommandButton(me, theText, theColor, theCommand, theFlags); return me; } void VoretCommandButton_Click(entity me, entity other) { //if(me.flags & COMMANDBUTTON_APPLY) // saveAllCvars(me.parent); cmd("\n", me.onClickCommand, "\n"); //if(me.flags & COMMANDBUTTON_REVERT) // loadAllCvars(me.parent); if(me.flags & COMMANDBUTTON_CLOSE) m_goto(string_null); } void configureVoretCommandButtonVoretCommandButton(entity me, string theText, vector theColor, string theCommand, float theFlags) { me.configureVoretButton(me, theText, theColor); me.onClickCommand = theCommand; me.flags = theFlags; me.onClick = VoretCommandButton_Click; me.onClickEntity = me; } #endif