LMMS
Loading...
Searching...
No Matches
ctl_linegraph.cpp File Reference
#include "config.h"
#include <calf/drawingutils.h>
#include <calf/ctl_linegraph.h>
#include <gdk/gdkkeysyms.h>
#include <math.h>
#include <gdk/gdk.h>
#include <sys/time.h>
#include <iostream>
#include <calf/giface.h>
#include <stdint.h>
#include <algorithm>

Macros

#define RGBAtoINT(r, g, b, a)
#define INTtoR(color)
#define INTtoG(color)
#define INTtoB(color)
#define INTtoA(color)

Functions

static void calf_line_graph_draw_grid (CalfLineGraph *lg, cairo_t *ctx, string &legend, bool vertical, float pos)
static int calf_line_graph_draw_graph (CalfLineGraph *lg, cairo_t *ctx, float *data, int mode=0)
static void calf_line_graph_draw_moving (CalfLineGraph *lg, cairo_t *ctx, float *data, int direction, int offset, int color)
void calf_line_graph_draw_label (CalfLineGraph *lg, cairo_t *cache_cr, string label, int x, int y, double bgopac, int absx, int absy, int center)
void calf_line_graph_draw_crosshairs (CalfLineGraph *lg, cairo_t *cache_cr, bool gradient, int gradient_rad, float alpha, int mask, bool circle, int x, int y, string label, double label_bg, int absx, int absy)
void calf_line_graph_draw_freqhandles (CalfLineGraph *lg, cairo_t *c)
static void calf_line_graph_destroy_surfaces (GtkWidget *widget)
static void calf_line_graph_create_surfaces (GtkWidget *widget)
static cairo_t * calf_line_graph_switch_context (CalfLineGraph *lg, cairo_t *ctx, cairo_impl *cimpl)
static void calf_line_graph_copy_surface (cairo_t *ctx, cairo_surface_t *source, int x=0, int y=0, float fade=1.f)
static void calf_line_graph_clear_surface (cairo_t *ctx)
void calf_line_graph_expose_request (GtkWidget *widget, bool force)
static gboolean calf_line_graph_expose (GtkWidget *widget, GdkEventExpose *event)
static int calf_line_graph_get_handle_at (CalfLineGraph *lg, double x, double y)
static gboolean calf_line_graph_pointer_motion (GtkWidget *widget, GdkEventMotion *event)
static gboolean calf_line_graph_button_press (GtkWidget *widget, GdkEventButton *event)
static gboolean calf_line_graph_button_release (GtkWidget *widget, GdkEventButton *event)
static gboolean calf_line_graph_scroll (GtkWidget *widget, GdkEventScroll *event)
static gboolean calf_line_graph_enter (GtkWidget *widget, GdkEventCrossing *event)
static gboolean calf_line_graph_leave (GtkWidget *widget, GdkEventCrossing *event)
void calf_line_graph_set_square (CalfLineGraph *graph, bool is_square)
static void calf_line_graph_size_request (GtkWidget *widget, GtkRequisition *requisition)
static void calf_line_graph_size_allocate (GtkWidget *widget, GtkAllocation *allocation)
static void calf_line_graph_class_init (CalfLineGraphClass *klass)
static void calf_line_graph_unrealize (GtkWidget *widget, CalfLineGraph *lg)
static void calf_line_graph_init (CalfLineGraph *lg)
GtkWidget * calf_line_graph_new ()
GType calf_line_graph_get_type (void)

Macro Definition Documentation

◆ INTtoA

#define INTtoA ( color)
Value:
(float)((color & 0x000000ff) >> 0) / 255.f

◆ INTtoB

#define INTtoB ( color)
Value:
(float)((color & 0x0000ff00) >> 8) / 255.f

◆ INTtoG

#define INTtoG ( color)
Value:
(float)((color & 0x00ff0000) >> 16) / 255.f

◆ INTtoR

#define INTtoR ( color)
Value:
(float)((color & 0xff000000) >> 24) / 255.f

◆ RGBAtoINT

#define RGBAtoINT ( r,
g,
b,
a )
Value:
((uint32_t)(r * 255) << 24) + ((uint32_t)(g * 255) << 16) + ((uint32_t)(b * 255) << 8) + (uint32_t)(a * 255)
uint8_t a
Definition Spc_Cpu.h:141
int g
Definition inflate.c:1573
unsigned int uint32_t
Definition mid.cpp:100
int r
Definition crypt.c:458
b
Definition crypt.c:628

Function Documentation

◆ calf_line_graph_button_press()

gboolean calf_line_graph_button_press ( GtkWidget * widget,
GdkEventButton * event )
static

◆ calf_line_graph_button_release()

gboolean calf_line_graph_button_release ( GtkWidget * widget,
GdkEventButton * event )
static

◆ calf_line_graph_class_init()

void calf_line_graph_class_init ( CalfLineGraphClass * klass)
static

◆ calf_line_graph_clear_surface()

void calf_line_graph_clear_surface ( cairo_t * ctx)
static

◆ calf_line_graph_copy_surface()

void calf_line_graph_copy_surface ( cairo_t * ctx,
cairo_surface_t * source,
int x = 0,
int y = 0,
float fade = 1.f )
static

◆ calf_line_graph_create_surfaces()

void calf_line_graph_create_surfaces ( GtkWidget * widget)
static

◆ calf_line_graph_destroy_surfaces()

void calf_line_graph_destroy_surfaces ( GtkWidget * widget)
static

◆ calf_line_graph_draw_crosshairs()

void calf_line_graph_draw_crosshairs ( CalfLineGraph * lg,
cairo_t * cache_cr,
bool gradient,
int gradient_rad,
float alpha,
int mask,
bool circle,
int x,
int y,
string label,
double label_bg,
int absx,
int absy )

◆ calf_line_graph_draw_freqhandles()

void calf_line_graph_draw_freqhandles ( CalfLineGraph * lg,
cairo_t * c )

◆ calf_line_graph_draw_graph()

int calf_line_graph_draw_graph ( CalfLineGraph * lg,
cairo_t * ctx,
float * data,
int mode = 0 )
static

◆ calf_line_graph_draw_grid()

void calf_line_graph_draw_grid ( CalfLineGraph * lg,
cairo_t * ctx,
string & legend,
bool vertical,
float pos )
static

◆ calf_line_graph_draw_label()

void calf_line_graph_draw_label ( CalfLineGraph * lg,
cairo_t * cache_cr,
string label,
int x,
int y,
double bgopac,
int absx,
int absy,
int center )

◆ calf_line_graph_draw_moving()

void calf_line_graph_draw_moving ( CalfLineGraph * lg,
cairo_t * ctx,
float * data,
int direction,
int offset,
int color )
static

◆ calf_line_graph_enter()

gboolean calf_line_graph_enter ( GtkWidget * widget,
GdkEventCrossing * event )
static

◆ calf_line_graph_expose()

gboolean calf_line_graph_expose ( GtkWidget * widget,
GdkEventExpose * event )
static

◆ calf_line_graph_expose_request()

void calf_line_graph_expose_request ( GtkWidget * widget,
bool force )

◆ calf_line_graph_get_handle_at()

int calf_line_graph_get_handle_at ( CalfLineGraph * lg,
double x,
double y )
static

◆ calf_line_graph_get_type()

GType calf_line_graph_get_type ( void )

◆ calf_line_graph_init()

void calf_line_graph_init ( CalfLineGraph * lg)
static

◆ calf_line_graph_leave()

gboolean calf_line_graph_leave ( GtkWidget * widget,
GdkEventCrossing * event )
static

◆ calf_line_graph_new()

GtkWidget * calf_line_graph_new ( )

◆ calf_line_graph_pointer_motion()

gboolean calf_line_graph_pointer_motion ( GtkWidget * widget,
GdkEventMotion * event )
static

◆ calf_line_graph_scroll()

gboolean calf_line_graph_scroll ( GtkWidget * widget,
GdkEventScroll * event )
static

◆ calf_line_graph_set_square()

void calf_line_graph_set_square ( CalfLineGraph * graph,
bool is_square )

◆ calf_line_graph_size_allocate()

void calf_line_graph_size_allocate ( GtkWidget * widget,
GtkAllocation * allocation )
static

◆ calf_line_graph_size_request()

void calf_line_graph_size_request ( GtkWidget * widget,
GtkRequisition * requisition )
static

◆ calf_line_graph_switch_context()

cairo_t * calf_line_graph_switch_context ( CalfLineGraph * lg,
cairo_t * ctx,
cairo_impl * cimpl )
static

◆ calf_line_graph_unrealize()

void calf_line_graph_unrealize ( GtkWidget * widget,
CalfLineGraph * lg )
static