aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/qregisters.h
AgeCommit message (Collapse)AuthorFilesLines
2013-03-19avoid delete-non-virtual-dtor warning on g++ 4.7Robin Haberkorn1-0/+1
* the warning itself makes sense but in the cases reportet they were irrelevant
2013-03-18explicitly instantiate MicroStateMachine: fixes compilation with gcc-4.4Robin Haberkorn1-1/+1
2013-03-18declare all global inter-dependant objects in main.cpp and get rid of ↵Robin Haberkorn1-0/+1
init_priority attribute * we cannot use weak symbols in MinGW, so we avoid init_priority for symbol initialization by compiling the empty definitions into sciteco-minimal but the real ones into sciteco (had to add new file symbols-minimal.cpp) * this fixes compilation/linking on LLVM Clang AND Dragonegg since their init_priority attribute is broken! this will likely be fixed in the near future but broken versions will be around for some time
2013-03-16common parent state for all file-name-expecting commands: fixes EM ↵Robin Haberkorn1-2/+2
tab-completions * StateExpectFile adds no functionality (currently), but is useful for checking state types
2013-02-25EM...$ command to read macro from file and execute immediately (just like "M")Robin Haberkorn1-0/+6
* useful for using macro libraries
2013-02-22use typedef for SciTECO integers and make it configurable at configure timeRobin Haberkorn1-7/+7
* storage size should always be 64 (gint64) to aid macro portability * however, for performance reasons users compiling from source might explicitly compile with 32 bit integers
2013-02-22clean up QRegisterTable::insert|initialize usageRobin Haberkorn1-7/+6
* distinction no longer useful since string part of register is now never pre-initialized
2013-02-22clean up QRegister vs. Buffer redundancies using TECODocument classRobin Haberkorn1-27/+14
* also encapsulates data properly (previously there were many public attributes to avoid permission issues) * new class also cares about saving/and restoring scroll state. now, buffer/q-reg edits and temporary accesses do not reset the scroll state anymore.
2013-02-14undo q-register table initializations (insertions) on ruboutRobin Haberkorn1-1/+23
2013-02-14option for q-reg spec state machine to allocate (insert) new q-registersRobin Haberkorn1-3/+25
* enabled for all modifying Q-Reg commands
2013-02-14micro state machine for Q-Register specifications: allow long Q-Reg namesRobin Haberkorn1-1/+22
syntax is as follows: ["."]("#" CHR1 CHR2 | "{" STRING_BUILDING "}" | CHR1) * the short one/two char names are turned upper case, while no case folding is performed on verbose names
2013-02-08fixed ring.current/QRegisters::current corruptionRobin Haberkorn1-6/+1
occurs when rubbing out a switch from q-reg string or to q-reg string
2013-02-08delegate commandline replacements ("}") to the cmdline macro levelRobin Haberkorn1-4/+5
allows commandline editing scripted by macros
2013-02-01fixed buffer Ring initializationRobin Haberkorn1-3/+2
* there was a dependency on interface initialization. it did not cause issues because destruction order was by chance. * introduced INIT_PRIO and PRIO_* macros to easy initialization order declaration (using a PRIO_* formula makes code self-documenting) * also used this to clean up QRegisterTable initialization (we do not need the explicit initialize() method) * also used to clean up symbols initialization
2013-01-23cleaned up QRegister state interface (can pass register by reference)Robin Haberkorn1-16/+13
2013-01-23moved StateExpectQReg from parser.h to qregisters.hRobin Haberkorn1-0/+19
* parser.cpp|h should be reserved for generic and misc. stuff. the StateExpectQReg class is used almost exclusively by qregisters.cpp|h * resolves a circular header dependency issue
2013-01-19updated copyright (2012-2013)Robin Haberkorn1-1/+1
2012-12-04added copyright notice to every source fileRobin Haberkorn1-0/+17
2012-12-04autoconf preparation: move everything into src/ subdirRobin Haberkorn1-0/+343