tesseract  5.0.0-alpha-619-ge9db
ScrollView Class Reference

#include <scrollview.h>

Public Types

enum  Color {
  NONE, BLACK, WHITE, RED,
  YELLOW, GREEN, CYAN, BLUE,
  MAGENTA, AQUAMARINE, DARK_SLATE_BLUE, LIGHT_BLUE,
  MEDIUM_BLUE, MIDNIGHT_BLUE, NAVY_BLUE, SKY_BLUE,
  SLATE_BLUE, STEEL_BLUE, CORAL, BROWN,
  SANDY_BROWN, GOLD, GOLDENROD, DARK_GREEN,
  DARK_OLIVE_GREEN, FOREST_GREEN, LIME_GREEN, PALE_GREEN,
  YELLOW_GREEN, LIGHT_GREY, DARK_SLATE_GREY, DIM_GREY,
  GREY, KHAKI, MAROON, ORANGE,
  ORCHID, PINK, PLUM, INDIAN_RED,
  ORANGE_RED, VIOLET_RED, SALMON, TAN,
  TURQUOISE, DARK_TURQUOISE, VIOLET, WHEAT,
  GREEN_YELLOW
}
 

Public Member Functions

 ~ScrollView ()
 
 ScrollView (const char *name, int x_pos, int y_pos, int x_size, int y_size, int x_canvas_size, int y_canvas_size)
 Calls Initialize with default argument for server_name_ & y_axis_reversed. More...
 
 ScrollView (const char *name, int x_pos, int y_pos, int x_size, int y_size, int x_canvas_size, int y_canvas_size, bool y_axis_reversed)
 Calls Initialize with default argument for server_name_. More...
 
 ScrollView (const char *name, int x_pos, int y_pos, int x_size, int y_size, int x_canvas_size, int y_canvas_size, bool y_axis_reversed, const char *server_name)
 Calls Initialize with all arguments given. More...
 
void AddEventHandler (SVEventHandler *listener)
 Add an Event Listener to this ScrollView Window. More...
 
SVEventAwaitEvent (SVEventType type)
 
SVEventAwaitEventAnyWindow ()
 
const char * GetName ()
 
int GetId ()
 
void Image (struct Pix *image, int x_pos, int y_pos)
 
void UpdateWindow ()
 
void Clear ()
 
void Pen (Color color)
 
void Pen (int red, int green, int blue)
 
void Pen (int red, int green, int blue, int alpha)
 
void Brush (Color color)
 
void Brush (int red, int green, int blue)
 
void Brush (int red, int green, int blue, int alpha)
 
void TextAttributes (const char *font, int pixel_size, bool bold, bool italic, bool underlined)
 
void Line (int x1, int y1, int x2, int y2)
 
void Stroke (float width)
 
void Rectangle (int x1, int y1, int x2, int y2)
 
void Ellipse (int x, int y, int width, int height)
 
void Text (int x, int y, const char *mystring)
 
void Image (const char *image, int x_pos, int y_pos)
 
void SetCursor (int x, int y)
 
void DrawTo (int x, int y)
 
void SetVisible (bool visible)
 
void AlwaysOnTop (bool b)
 
int ShowYesNoDialog (const char *msg)
 
char * ShowInputDialog (const char *msg)
 
void AddMessageBox ()
 
void AddMessage (const char *format,...)
 
void ZoomToRectangle (int x1, int y1, int x2, int y2)
 
void SendMsg (const char *msg,...)
 Send a message to the server, attaching the window id. More...
 
void MenuItem (const char *parent, const char *name)
 
void MenuItem (const char *parent, const char *name, int cmdEvent)
 
void MenuItem (const char *parent, const char *name, int cmdEvent, bool flagged)
 
void PopupItem (const char *parent, const char *name)
 
void PopupItem (const char *parent, const char *name, int cmdEvent, const char *value, const char *desc)
 
int TranslateYCoordinate (int y)
 

Static Public Member Functions

static void Update ()
 
static void Exit ()
 
static void SendRawMessage (const char *msg)
 

Detailed Description

Definition at line 97 of file scrollview.h.

Member Enumeration Documentation

◆ Color

Enumerator
NONE 
BLACK 
WHITE 
RED 
YELLOW 
GREEN 
CYAN 
BLUE 
MAGENTA 
AQUAMARINE 
DARK_SLATE_BLUE 
LIGHT_BLUE 
MEDIUM_BLUE 
MIDNIGHT_BLUE 
NAVY_BLUE 
SKY_BLUE 
SLATE_BLUE 
STEEL_BLUE 
CORAL 
BROWN 
SANDY_BROWN 
GOLD 
GOLDENROD 
DARK_GREEN 
DARK_OLIVE_GREEN 
FOREST_GREEN 
LIME_GREEN 
PALE_GREEN 
YELLOW_GREEN 
LIGHT_GREY 
DARK_SLATE_GREY 
DIM_GREY 
GREY 
KHAKI 
MAROON 
ORANGE 
ORCHID 
PINK 
PLUM 
INDIAN_RED 
ORANGE_RED 
VIOLET_RED 
SALMON 
TAN 
TURQUOISE 
DARK_TURQUOISE 
VIOLET 
WHEAT 
GREEN_YELLOW 

Definition at line 100 of file scrollview.h.

100  {
101  NONE,
102  BLACK,
103  WHITE,
104  RED,
105  YELLOW,
106  GREEN,
107  CYAN,
108  BLUE,
109  MAGENTA,
110  AQUAMARINE,
112  LIGHT_BLUE,
113  MEDIUM_BLUE,
115  NAVY_BLUE,
116  SKY_BLUE,
117  SLATE_BLUE,
118  STEEL_BLUE,
119  CORAL,
120  BROWN,
121  SANDY_BROWN,
122  GOLD,
123  GOLDENROD,
124  DARK_GREEN,
126  FOREST_GREEN,
127  LIME_GREEN,
128  PALE_GREEN,
129  YELLOW_GREEN,
130  LIGHT_GREY,
132  DIM_GREY,
133  GREY,
134  KHAKI,
135  MAROON,
136  ORANGE,
137  ORCHID,
138  PINK,
139  PLUM,
140  INDIAN_RED,
141  ORANGE_RED,
142  VIOLET_RED,
143  SALMON,
144  TAN,
145  TURQUOISE,
147  VIOLET,
148  WHEAT,
149  GREEN_YELLOW // Make sure this one is last.
150 };

Constructor & Destructor Documentation

◆ ~ScrollView()

ScrollView::~ScrollView ( )

Definition at line 360 of file scrollview.cpp.

361  {
362  #ifndef GRAPHICS_DISABLED
363  svmap_mu->lock();
364  if (svmap[window_id_] != nullptr) {
365  svmap_mu->unlock();
366  // So the event handling thread can quit.
367  SendMsg("destroy()");
368 
370  delete sve;
371  svmap_mu->lock();
372  svmap[window_id_] = nullptr;
373  svmap_mu->unlock();
374  // The event handler thread for this window *must* receive the
375  // destroy event and set its pointer to this to nullptr before we allow
376  // the destructor to exit.
377  while (!event_handler_ended_)
378  Update();
379  } else {
380  svmap_mu->unlock();
381  }
382  delete mutex_;
383  delete semaphore_;
384  delete points_;
385  for (auto & i : event_table_) {
386  delete i;
387  }
388  #endif // GRAPHICS_DISABLED

◆ ScrollView() [1/3]

ScrollView::ScrollView ( const char *  name,
int  x_pos,
int  y_pos,
int  x_size,
int  y_size,
int  x_canvas_size,
int  y_canvas_size 
)

Calls Initialize with default argument for server_name_ & y_axis_reversed.

Definition at line 260 of file scrollview.cpp.

262  {
263  Initialize(name, x_pos, y_pos, x_size, y_size, x_canvas_size, y_canvas_size,
264  false, "localhost");

◆ ScrollView() [2/3]

ScrollView::ScrollView ( const char *  name,
int  x_pos,
int  y_pos,
int  x_size,
int  y_size,
int  x_canvas_size,
int  y_canvas_size,
bool  y_axis_reversed 
)

Calls Initialize with default argument for server_name_.

Definition at line 252 of file scrollview.cpp.

255  {
256  Initialize(name, x_pos, y_pos, x_size, y_size, x_canvas_size, y_canvas_size,
257  y_axis_reversed, "localhost");

◆ ScrollView() [3/3]

ScrollView::ScrollView ( const char *  name,
int  x_pos,
int  y_pos,
int  x_size,
int  y_size,
int  x_canvas_size,
int  y_canvas_size,
bool  y_axis_reversed,
const char *  server_name 
)

Calls Initialize with all arguments given.

Definition at line 245 of file scrollview.cpp.

248  {
249  Initialize(name, x_pos, y_pos, x_size, y_size, x_canvas_size, y_canvas_size,

Member Function Documentation

◆ AddEventHandler()

void ScrollView::AddEventHandler ( SVEventHandler listener)

Add an Event Listener to this ScrollView Window.

Definition at line 415 of file scrollview.cpp.

416  {
417  event_handler_ = listener;

◆ AddMessage()

void ScrollView::AddMessage ( const char *  format,
  ... 
)

Definition at line 560 of file scrollview.cpp.

562  {
563  va_list args;
564  char message[kMaxMsgSize - 4];
565 
566  va_start(args, format); // variable list
567  vsnprintf(message, sizeof(message), format, args);
568  va_end(args);
569 
570  char form[kMaxMsgSize];
571  snprintf(form, sizeof(form), "w%u:%s", window_id_, message);
572 
573  char* esc = AddEscapeChars(form);
574  SendMsg("addMessage(\"%s\")", esc);

◆ AddMessageBox()

void ScrollView::AddMessageBox ( )

Definition at line 577 of file scrollview.cpp.

579  {

◆ AlwaysOnTop()

void ScrollView::AlwaysOnTop ( bool  b)

Definition at line 554 of file scrollview.cpp.

556  {
557  if (b) { SendMsg("setAlwaysOnTop(true)");

◆ AwaitEvent()

SVEvent * ScrollView::AwaitEvent ( SVEventType  type)

Block until an event of the given type is received. Note: The calling function is responsible for deleting the returned SVEvent afterwards!

Definition at line 443 of file scrollview.cpp.

444  {
445  // Initialize the waiting semaphore.
446  auto* sem = new SVSemaphore();
447  std::pair<ScrollView*, SVEventType> ea(this, type);
448  waiting_for_events_mu->lock();
449  waiting_for_events[ea] = std::pair<SVSemaphore*, SVEvent*> (sem, (SVEvent*)nullptr);
450  waiting_for_events_mu->unlock();
451  // Wait on it, but first flush.
452  stream_->Flush();
453  sem->Wait();
454  // Process the event we got woken up for (its in waiting_for_events pair).
455  waiting_for_events_mu->lock();
456  SVEvent* ret = waiting_for_events[ea].second;
457  waiting_for_events.erase(ea);
458  delete sem;
459  waiting_for_events_mu->unlock();
460  return ret;

◆ AwaitEventAnyWindow()

SVEvent * ScrollView::AwaitEventAnyWindow ( )

Definition at line 464 of file scrollview.cpp.

465  {
466  // Initialize the waiting semaphore.
467  auto* sem = new SVSemaphore();
468  std::pair<ScrollView*, SVEventType> ea((ScrollView*)nullptr, SVET_ANY);
469  waiting_for_events_mu->lock();
470  waiting_for_events[ea] = std::pair<SVSemaphore*, SVEvent*> (sem, (SVEvent*)nullptr);
471  waiting_for_events_mu->unlock();
472  // Wait on it.
473  stream_->Flush();
474  sem->Wait();
475  // Process the event we got woken up for (its in waiting_for_events pair).
476  waiting_for_events_mu->lock();
477  SVEvent* ret = waiting_for_events[ea].second;
478  waiting_for_events.erase(ea);
479  waiting_for_events_mu->unlock();
480  return ret;

◆ Brush() [1/3]

void ScrollView::Brush ( Color  color)

Definition at line 723 of file scrollview.cpp.

725  {
726  Brush(table_colors[color][0],
727  table_colors[color][1],
728  table_colors[color][2],

◆ Brush() [2/3]

void ScrollView::Brush ( int  red,
int  green,
int  blue 
)

Definition at line 624 of file scrollview.cpp.

626  {

◆ Brush() [3/3]

void ScrollView::Brush ( int  red,
int  green,
int  blue,
int  alpha 
)

Definition at line 629 of file scrollview.cpp.

631  {

◆ Clear()

void ScrollView::Clear ( )

Definition at line 588 of file scrollview.cpp.

590  {

◆ DrawTo()

void ScrollView::DrawTo ( int  x,
int  y 
)

Definition at line 524 of file scrollview.cpp.

526  {
527  points_->xcoords.push_back(x);
528  points_->ycoords.push_back(TranslateYCoordinate(y));

◆ Ellipse()

void ScrollView::Ellipse ( int  x,
int  y,
int  width,
int  height 
)

Definition at line 608 of file scrollview.cpp.

610  {
611  SendMsg("drawEllipse(%d,%d,%u,%u)",

◆ Exit()

void ScrollView::Exit ( )
static

Definition at line 582 of file scrollview.cpp.

584  {
585  SendRawMessage("svmain:exit()");

◆ GetId()

int ScrollView::GetId ( )
inline

Definition at line 190 of file scrollview.h.

192 { return window_id_; }

◆ GetName()

const char* ScrollView::GetName ( )
inline

Definition at line 187 of file scrollview.h.

189 { return window_name_; }

◆ Image() [1/2]

void ScrollView::Image ( const char *  image,
int  x_pos,
int  y_pos 
)

Definition at line 656 of file scrollview.cpp.

658  {
659  SendMsg("openImage('%s')", image);
660  SendMsg("drawImage('%s',%d,%d)",

◆ Image() [2/2]

void ScrollView::Image ( struct Pix *  image,
int  x_pos,
int  y_pos 
)

Definition at line 763 of file scrollview.cpp.

765  {
766  l_uint8* data;
767  size_t size;
768  pixWriteMem(&data, &size, image, IFF_PNG);
769  int base64_len = (size + 2) / 3 * 4;
770  y_pos = TranslateYCoordinate(y_pos);
771  SendMsg("readImage(%d,%d,%d)", x_pos, y_pos, base64_len);
772  // Base64 encode the data.
773  const char kBase64Table[64] = {
774  'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H',
775  'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P',
776  'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X',
777  'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f',
778  'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n',
779  'o', 'p', 'q', 'r', 's', 't', 'u', 'v',
780  'w', 'x', 'y', 'z', '0', '1', '2', '3',
781  '4', '5', '6', '7', '8', '9', '+', '/',
782  };
783  char* base64 = new char[base64_len + 1];
784  memset(base64, '=', base64_len);
785  base64[base64_len] = '\0';
786  int remainder = 0;
787  int bits_left = 0;
788  int code_len = 0;
789  for (size_t i = 0; i < size; ++i) {
790  int code = (data[i] >> (bits_left + 2)) | remainder;
791  base64[code_len++] = kBase64Table[code & 63];
792  bits_left += 2;
793  remainder = data[i] << (6 - bits_left);
794  if (bits_left == 6) {
795  base64[code_len++] = kBase64Table[remainder & 63];
796  bits_left = 0;
797  remainder = 0;
798  }
799  }
800  if (bits_left > 0)
801  base64[code_len++] = kBase64Table[remainder & 63];
802  SendRawMessage(base64);
803  delete [] base64;

◆ Line()

void ScrollView::Line ( int  x1,
int  y1,
int  x2,
int  y2 
)

Definition at line 531 of file scrollview.cpp.

533  {
534  if (!points_->xcoords.empty() && x1 == points_->xcoords.back() &&
535  TranslateYCoordinate(y1) == points_->ycoords.back()) {
536  // We are already at x1, y1, so just draw to x2, y2.
537  DrawTo(x2, y2);
538  } else if (!points_->xcoords.empty() && x2 == points_->xcoords.back() &&
539  TranslateYCoordinate(y2) == points_->ycoords.back()) {
540  // We are already at x2, y2, so just draw to x1, y1.
541  DrawTo(x1, y1);
542  } else {
543  // This is a new line.
544  SetCursor(x1, y1);
545  DrawTo(x2, y2);

◆ MenuItem() [1/3]

void ScrollView::MenuItem ( const char *  parent,
const char *  name 
)

Definition at line 679 of file scrollview.cpp.

681  {
682  if (parent == nullptr) { parent = ""; }

◆ MenuItem() [2/3]

void ScrollView::MenuItem ( const char *  parent,
const char *  name,
int  cmdEvent 
)

Definition at line 673 of file scrollview.cpp.

675  {
676  if (parent == nullptr) { parent = ""; }

◆ MenuItem() [3/3]

void ScrollView::MenuItem ( const char *  parent,
const char *  name,
int  cmdEvent,
bool  flagged 
)

Definition at line 663 of file scrollview.cpp.

666  {
667  if (parent == nullptr) { parent = ""; }
668  if (flag) { SendMsg("addMenuBarItem('%s','%s',%d,true)",
669  parent, name, cmdEvent);
670  } else { SendMsg("addMenuBarItem('%s','%s',%d,false)",

◆ Pen() [1/3]

void ScrollView::Pen ( Color  color)

Definition at line 717 of file scrollview.cpp.

719  {
720  Pen(table_colors[color][0], table_colors[color][1],

◆ Pen() [2/3]

void ScrollView::Pen ( int  red,
int  green,
int  blue 
)

Definition at line 614 of file scrollview.cpp.

616  {

◆ Pen() [3/3]

void ScrollView::Pen ( int  red,
int  green,
int  blue,
int  alpha 
)

Definition at line 619 of file scrollview.cpp.

621  {

◆ PopupItem() [1/2]

void ScrollView::PopupItem ( const char *  parent,
const char *  name 
)

Definition at line 685 of file scrollview.cpp.

687  {
688  if (parent == nullptr) { parent = ""; }

◆ PopupItem() [2/2]

void ScrollView::PopupItem ( const char *  parent,
const char *  name,
int  cmdEvent,
const char *  value,
const char *  desc 
)

Definition at line 691 of file scrollview.cpp.

694  {
695  if (parent == nullptr) { parent = ""; }
696  char* esc = AddEscapeChars(value);
697  char* esc2 = AddEscapeChars(desc);
698  SendMsg("addPopupMenuItem('%s','%s',%d,'%s','%s')", parent, name,
699  cmdEvent, esc, esc2);
700  delete[] esc;

◆ Rectangle()

void ScrollView::Rectangle ( int  x1,
int  y1,
int  x2,
int  y2 
)

Definition at line 599 of file scrollview.cpp.

601  {
602  if (x1 == x2 && y1 == y2)
603  return; // Scrollviewer locks up.
604  SendMsg("drawRectangle(%d,%d,%d,%d)",

◆ SendMsg()

void ScrollView::SendMsg ( const char *  msg,
  ... 
)

Send a message to the server, attaching the window id.

Definition at line 392 of file scrollview.cpp.

393  {
394  if (!points_->empty)
395  SendPolygon();
396  va_list args;
397  char message[kMaxMsgSize - 4];
398 
399  va_start(args, format); // variable list
400  vsnprintf(message, sizeof(message), format, args);
401  va_end(args);
402 
403  char form[kMaxMsgSize];
404  snprintf(form, sizeof(form), "w%u:%s\n", window_id_, message);
405 
406  stream_->Send(form);

◆ SendRawMessage()

void ScrollView::SendRawMessage ( const char *  msg)
static

Send a message to the server without a window id. Used for global events like exit().

Definition at line 410 of file scrollview.cpp.

411  {
412  stream_->Send(msg);

◆ SetCursor()

void ScrollView::SetCursor ( int  x,
int  y 
)

Definition at line 518 of file scrollview.cpp.

520  {
521  SendPolygon();

◆ SetVisible()

void ScrollView::SetVisible ( bool  visible)

Definition at line 548 of file scrollview.cpp.

550  {
551  if (visible) { SendMsg("setVisible(true)");

◆ ShowInputDialog()

char * ScrollView::ShowInputDialog ( const char *  msg)

Definition at line 731 of file scrollview.cpp.

733  {
734  SendMsg("showInputDialog(\"%s\")", msg);
735  SVEvent* ev;
736  // wait till an input event (all others are thrown away)
737  ev = AwaitEvent(SVET_INPUT);
738  char* p = new char[strlen(ev->parameter) + 1];
739  strcpy(p, ev->parameter);
740  delete ev;

◆ ShowYesNoDialog()

int ScrollView::ShowYesNoDialog ( const char *  msg)

Definition at line 743 of file scrollview.cpp.

745  {
746  SendMsg("showYesNoDialog(\"%s\")", msg);
747  SVEvent* ev;
748  // Wait till an input event (all others are thrown away)
749  ev = AwaitEvent(SVET_INPUT);
750  int a = ev->parameter[0];
751  delete ev;

◆ Stroke()

void ScrollView::Stroke ( float  width)

Definition at line 593 of file scrollview.cpp.

595  {

◆ Text()

void ScrollView::Text ( int  x,
int  y,
const char *  mystring 
)

Definition at line 651 of file scrollview.cpp.

653  {

◆ TextAttributes()

void ScrollView::TextAttributes ( const char *  font,
int  pixel_size,
bool  bold,
bool  italic,
bool  underlined 
)

Definition at line 634 of file scrollview.cpp.

637  {
638  const char* b;
639  const char* i;
640  const char* u;
641 
642  if (bold) { b = "true";
643  } else { b = "false"; }
644  if (italic) { i = "true";
645  } else { i = "false"; }
646  if (underlined) { u = "true";
647  } else { u = "false"; }
648  SendMsg("textAttributes('%s',%u,%s,%s,%s)", font, pixel_size,

◆ TranslateYCoordinate()

int ScrollView::TranslateYCoordinate ( int  y)

Definition at line 825 of file scrollview.cpp.

827  {
828  if (!y_axis_is_reversed_) { return y;

◆ Update()

void ScrollView::Update ( )
static

Definition at line 708 of file scrollview.cpp.

710  {
711  std::lock_guard<std::mutex> guard(*svmap_mu);
712  for (auto & iter : svmap) {
713  if (iter.second != nullptr)
714  iter.second->UpdateWindow();

◆ UpdateWindow()

void ScrollView::UpdateWindow ( )

Definition at line 703 of file scrollview.cpp.

705  {

◆ ZoomToRectangle()

void ScrollView::ZoomToRectangle ( int  x1,
int  y1,
int  x2,
int  y2 
)

Definition at line 755 of file scrollview.cpp.

757  {
758  y1 = TranslateYCoordinate(y1);
759  y2 = TranslateYCoordinate(y2);
760  SendMsg("zoomRectangle(%d,%d,%d,%d)",

The documentation for this class was generated from the following files:
ScrollView::GREY
Definition: scrollview.h:133
ScrollView::SANDY_BROWN
Definition: scrollview.h:121
ScrollView
Definition: scrollview.h:97
ScrollView::Brush
void Brush(Color color)
Definition: scrollview.cpp:723
SVET_DESTROY
Definition: scrollview.h:45
SVSemaphore
Definition: svutil.h:44
ScrollView::DARK_GREEN
Definition: scrollview.h:124
ScrollView::SendRawMessage
static void SendRawMessage(const char *msg)
Definition: scrollview.cpp:410
SVNetwork::Flush
void Flush()
Flush the buffer.
Definition: svutil.cpp:155
ScrollView::MAROON
Definition: scrollview.h:135
SVET_INPUT
Definition: scrollview.h:49
SVPolyLineBuffer::empty
bool empty
Definition: scrollview.cpp:46
ScrollView::LIGHT_GREY
Definition: scrollview.h:130
SVPolyLineBuffer::xcoords
std::vector< int > xcoords
Definition: scrollview.cpp:47
ScrollView::DARK_SLATE_GREY
Definition: scrollview.h:131
ScrollView::DARK_OLIVE_GREEN
Definition: scrollview.h:125
ScrollView::STEEL_BLUE
Definition: scrollview.h:118
ScrollView::BROWN
Definition: scrollview.h:120
ScrollView::CYAN
Definition: scrollview.h:107
ScrollView::NONE
Definition: scrollview.h:101
ScrollView::Pen
void Pen(Color color)
Definition: scrollview.cpp:717
ScrollView::DrawTo
void DrawTo(int x, int y)
Definition: scrollview.cpp:524
ScrollView::MEDIUM_BLUE
Definition: scrollview.h:113
ScrollView::DIM_GREY
Definition: scrollview.h:132
ScrollView::PLUM
Definition: scrollview.h:139
ScrollView::BLUE
Definition: scrollview.h:108
ScrollView::VIOLET
Definition: scrollview.h:147
ScrollView::ORCHID
Definition: scrollview.h:137
ScrollView::GOLD
Definition: scrollview.h:122
ScrollView::FOREST_GREEN
Definition: scrollview.h:126
ScrollView::DARK_TURQUOISE
Definition: scrollview.h:146
ScrollView::BLACK
Definition: scrollview.h:102
SVEvent::parameter
char * parameter
Definition: scrollview.h:65
kMaxMsgSize
const int kMaxMsgSize
Definition: scrollview.cpp:42
ScrollView::KHAKI
Definition: scrollview.h:134
ScrollView::ORANGE
Definition: scrollview.h:136
ScrollView::TAN
Definition: scrollview.h:144
ScrollView::LIGHT_BLUE
Definition: scrollview.h:112
ScrollView::MAGENTA
Definition: scrollview.h:109
ScrollView::SKY_BLUE
Definition: scrollview.h:116
ScrollView::YELLOW
Definition: scrollview.h:105
ScrollView::TranslateYCoordinate
int TranslateYCoordinate(int y)
Definition: scrollview.cpp:825
ScrollView::WHITE
Definition: scrollview.h:103
ScrollView::AQUAMARINE
Definition: scrollview.h:110
SVPolyLineBuffer::ycoords
std::vector< int > ycoords
Definition: scrollview.cpp:48
ScrollView::SendMsg
void SendMsg(const char *msg,...)
Send a message to the server, attaching the window id.
Definition: scrollview.cpp:392
ScrollView::WHEAT
Definition: scrollview.h:148
ScrollView::RED
Definition: scrollview.h:104
ScrollView::PINK
Definition: scrollview.h:138
SVET_ANY
Definition: scrollview.h:55
ScrollView::AwaitEvent
SVEvent * AwaitEvent(SVEventType type)
Definition: scrollview.cpp:443
ScrollView::LIME_GREEN
Definition: scrollview.h:127
ScrollView::GOLDENROD
Definition: scrollview.h:123
ScrollView::VIOLET_RED
Definition: scrollview.h:142
ScrollView::SALMON
Definition: scrollview.h:143
ScrollView::YELLOW_GREEN
Definition: scrollview.h:129
ScrollView::PALE_GREEN
Definition: scrollview.h:128
SVEvent
Definition: scrollview.h:60
ScrollView::GREEN
Definition: scrollview.h:106
ScrollView::DARK_SLATE_BLUE
Definition: scrollview.h:111
ScrollView::TURQUOISE
Definition: scrollview.h:145
tesstrain_utils.type
type
Definition: tesstrain_utils.py:141
ScrollView::Update
static void Update()
Definition: scrollview.cpp:708
ScrollView::SetCursor
void SetCursor(int x, int y)
Definition: scrollview.cpp:518
ScrollView::CORAL
Definition: scrollview.h:119
ScrollView::INDIAN_RED
Definition: scrollview.h:140
ScrollView::MIDNIGHT_BLUE
Definition: scrollview.h:114
ScrollView::SLATE_BLUE
Definition: scrollview.h:117
ScrollView::GREEN_YELLOW
Definition: scrollview.h:149
ScrollView::ORANGE_RED
Definition: scrollview.h:141
SVNetwork::Send
void Send(const char *msg)
Put a message in the messagebuffer to the server and try to send it.
Definition: svutil.cpp:149
ScrollView::NAVY_BLUE
Definition: scrollview.h:115