Skip to content

Instantly share code, notes, and snippets.

@rgm
Created February 8, 2011 22:37
Show Gist options
  • Save rgm/817430 to your computer and use it in GitHub Desktop.
Save rgm/817430 to your computer and use it in GitHub Desktop.
#ifndef AO_UTILITIES
#define AO_UTILITIES
#define DEBUGLOG(s,...) NSLog((@"%s:%d " s), __func__, __LINE__, ## __VA_ARGS__)
#include <MiniCadCallBacks.h>
#include <VWFCLibrary.h>
enum TagType {
kEverywhereTagType,
kFloorOnlyTagType,
};
namespace AO {
//
// NB: requires the hd to be to a PIO that has parameters
// use_lscale::bool and scale_factor::real
//
//
// returns the absolute scale at which the PIO should be drawn
// taking into account use_lscale and scale_factor
//
double absoluteScale(MCObjectHandle hd);
//
// returns the relative scale difference (eg 2x, 4x) between
// the PIO scale and the environment scale taking into account
// use_lscale and scale_factor
//
double relativeScale(MCObjectHandle hd);
//
// retrieves document setting
//
double unitsPerInch();
//
// return class for initial insertion
// provide for this possibly being an "old-style" file
// with a differently-named NOTES class
// returns false if not an initial insert
//
VWFC::VWObjects::VWClass initialTagClass(TagType typeIndex);
//
// use to present a multiline dialog
// hd is the handle to the parametric to update with result
// paramName is the name of the parameter in which to store the string
//
void RunMultilineStringDialog(TXString dialogTitle, MCObjectHandle hd, char *paramName);
InternalIndex initialNoteTextStyleIndex();
namespace Graphics {
SMarkerStyle dotMarkerStyle(double relativeScale);
SMarkerStyle arrowMarkerStyle(double relativeScale);
}
void LogPt(char *msg, WorldPt pt);
}
#endif
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment