summaryrefslogtreecommitdiff
path: root/tikzit/src
AgeCommit message (Collapse)Author
2014-03-25minor semantical errorsJohan Paulsson
2014-03-25fixing a couple of attributes that stopped selectable nodes from showingJohan Paulsson
2014-03-25trading a crash for a memory leakJohan Paulsson
2014-03-25osx gui: custom nodes preference panel shows tikzit preview and tikz code ↵Johan Paulsson
for selected custom node.
2014-03-23Converting from GC to ARCJohan Paulsson
This should only be for the osx specific code as all common files are left out. Hopefully this shouldn't introduce any problems on the other systems.
2014-03-23osx gui: initial creation of custom node shapes preference panelJohan Paulsson
2014-02-14Fix for crash when moving too close to each otherJohan Paulsson
Dividing by wrong variable causes the program to crash when moving nodes too close to each.
2013-12-02osx gui: Cosmetic changes to preference windowJohan Paulsson
Added icons for the three tabs and moved the preamble to be default tab as that is likely to be the one most users will want to go to first.
2013-12-02osx gui: Moved preamble window to preferences.Johan Paulsson
Moved the preamble window to the preference panel as a new tab. The PreambleController is now a subclass of NSView with related changes to the Preamble.xib. The toolbar that controlled default or custom preamble has been replaced with buttons in the interface.
2013-12-01osx gui: Added preference tab for Sparkle updater.Johan Paulsson
2013-12-01osx gui: Fixed dragging of the preview pdf to all applications.Johan Paulsson
2013-11-30osx gui: Added dragging of the preview pdf to other applications.Johan Paulsson
The preview area can be dragged as a pasteboard pdf to other applications rich text editor views. Notably, this means that small images can be made and emailed as PDFs. This is not dragging the PDFs as files so dragging to the finder for saving doesn’t work.
2013-10-11Fix rule dependencies for lexer/parser generationAlex Merry
Previously, if common/tikzparser.m existed but common/tikzparser.h did not, bison would not be re-run, and the build would fail elsewhere with an error about not finding tikzparser.h. The same would be true of the tikzlexer files. Issue #15
2013-09-01GTK: Properly clear the renderer from the old toolAlex Merry
Fixes, for example, unsetting the cursor when changing from the bounding box tool.
2013-09-01GTK: delay setting cursor on non-realised windowsAlex Merry
Calling -[WidgetSurface setCursor:] when the underlying GtkWidget has not been realised yet used to result in a warning that the GdkWindow did not exist. As a result, the cursor would not actually be set. To deal with this, if the widget has not been realised, we delay setting the cursor until it is.
2013-08-29When dragging, only snap leader node to gridAlex Merry
If you've carefully hand-positioned various nodes on a diagram relative to each other, and then want to move the whole thing around, you generally don't want to change their position relative to each other. So we only snap the node being dragged to the grid. Everything else in the selection maintains its position relative to that node.
2013-08-29fixed osx code and build to work with the new parserAleks Kissinger
2013-08-28remove old TikzParser.{h,m}, as this causes name clash on non-case-dependent ↵Aleks Kissinger
file system (e.g. OS X)
2013-08-28Make tikzparser.ym compatible with bison 2.3Alex Merry
2013-08-27Properly clear selection boxAlex Merry
It turns out the selection box, rather than being properly set to the zero rectangle, was being set to the value of an uninitialised NSRect created on the stack. This never caused any issues for me before, because my system compiles things with _FORTIFY_SOURCE by default, which zeros new variables. It was only when I (indirectly) disabled this for debugging in gdb that I started getting selection boxes appearing in odd places.
2013-08-27Make sure we never output numbers in scientific notationAlex Merry
Converting NSNumber to a string raises the possibility of outputing a number like 2.2e-8, as it essentially uses the %g format specifier. This then cannot be parsed. Since there is no built-in specifier for outputing floats with variable precision (ie: removing any trailing zeros), I cooked up a function to do just that. Currently set the maximum precision at 4dp (our normal grid layout only makes use of 2dp).
2013-08-25Redraw graphs when shapes are refreshedAlex Merry
2013-08-25Recalculate edge properties when shapes are refreshedAlex Merry
Shape sizes can change (if you're actively editing a shape), which can mean that some edge properties need to be recalculated. We do this at the graph, rather than edge, level to avoid the overhead of installing a notification for every single edge.
2013-08-25Memory management: release old shape dict when refreshedAlex Merry
2013-08-25Better debugging: set description for node and edge stylesAlex Merry
2013-08-22Unset default "center" anchor when applying a styleAlex Merry
Edges almost always want to be anchored to the "center" of an unstyled (style=none) node, as otherwise edges won't join up. However, this anchor should be discarded if a style is then set on the node, otherwise arrowheads tend to disappear.
2013-08-07Allow preambles to omit the tikzit-specific preview stuffAlex Merry
The editable preambles include a bunch of things that *have* to be there for previews to work, which makes figuring out what you can edit hard. We now add a \documentclass automagically if it is missing, and if \begin{document} is missing, we assume the preview-specific stuff should be added. OSX changes are untested.
2013-08-07Add variant of stringWithContentsOfFile that produces an errorAlex Merry
It turns out that the [NSString stringWithContentsOfFile:] family of methods do not have a way of reporting why a file could not be read; [NSString stringWithContentsOfFile:usedEncoding:error:] will only set the error object if there was a problem with decoding. So, we cook our own variant that tries to figure out why opening the file failed. User-visible effect: in the GTK+ port, if you try to open a file from the "open recent" menu that no longer exists, you will get a more helpful error message.
2013-08-07GTK: make presentError: methods cope with null errorsAlex Merry
We can't always guarantee that library code will produce an error object when things fail; default to "unknown error" if the error object is null or does not have a message.
2013-08-06Copy anchors when copying an EdgeAlex Merry
Previously, copying-and-pasting a graph would lose source and target anchor information.
2013-08-04GTK: holding down ctrl pans, regardless of toolAlex Merry
If the user presses the LMB whilst holding ctrl, we bypass the tool and enter panning mode, where dragging the mouse moves around the graph, until the LMB is released.
2013-08-04GTK: SelectTool: return to QuietState on mouse releaseAlex Merry
2013-08-03Better dependency informationAlex Merry
Be explicit about what versions we require.
2013-08-02Tidy up and document bison decls in tikzparser.ymAlex Merry
2013-08-02Use flex and bison options instead of #definesAlex Merry
Defining YY_EXTRA_TYPE is not the "proper" way to set that type (a %option should be used instead), and defining YYLEX_PARAM will no longer work with bison 3 (%lex-param is the correct thing to use).
2013-07-29Do not reverse the order of the properties when parsingAlex Merry
2013-07-29Allow empty square brackets for properties listAlex Merry
2013-05-07Change "preferences" to "configuration"Alex Merry
"Preferences" suggests it's about non-essential behavioural or visual changes, but you need to configure TikZiT to use it properly (especially adding node and edge styles). Also, fix the title of the configuration window not to say "premable editor".
2013-05-07GTK+: One preview window per main windowAlex Merry
Each document window has its own preview window, allowing multiple ones to be open at once.
2013-04-02Prevent toolbox getting lost when minimising windowsAlex Merry
On X, window managers don't like WM_TRANSIENT_FOR being altered while a window is visible; this meant that if you opened TikZiT and opened a second main window and minimised the main window that had focus, the toolbox and properties window would both disappear, with no way to get them back (well, almost - the properties window could be retreived with the menu item that shows/hides it). Tested with KWin, Metacity (Gnome 2's WM), Mutter (Gnome 3) and xfwm4 (XFCE 4). Metacity and Mutter still behave a little oddly - you have to click one of the main windows *twice* to get it to focus. KWin and xfwm4 work fine.
2013-03-27Allow empty anchor namesAlex Merry
2013-03-26Add edge anchor editing to GTK portAlex Merry
Includes functions for testing if an anchor is valid.
2013-03-25Catch some memory leaksAlex Merry
Memory usage on Linux no longer shoots up after running the tikz parser a handful of times.
2013-03-25Fix issues found by the clang static analyzerAlex Merry
2013-03-25Fix clang warningsAlex Merry
2013-03-24GTK: print backtrace on unhandled exceptionsAlex Merry
2013-03-24GTK: highlight the bad symbol on parse errorsAlex Merry
2013-03-24Add methods to Graph to create from tikzAlex Merry
These are just convenience wrappers for TikzGraphAssembler. As a result, non of the GTK code uses TikzGraphAssembler directly.
2013-03-24Document TikzGraphAssemblerAlex Merry
2013-03-24Make first/last_column count character offsetsAlex Merry
This means that tabs don't get treated specially. No-one can seem to agree how many spaces a tab should be, and the first thing we actually ended up doing was to undo the extra tab counting.