// Mark field as modified
settings->settings_modified[id] = 1;
- if (settings->instance)
+
+ EventArgsInit(&e, "freerdp");
+ e.id = id;
- PubSub_OnParamChange(context->pubSub, context->instance, &e);
++ PubSub_OnParamChange(context->pubSub, context, &e);
+
+ return -1;
+}
+
+int freerdp_get_param_int(rdpSettings* settings, int id)
+{
+ switch (id)
{
- IFCALL(((freerdp*) settings->instance)->context->client->OnParamChange, ((freerdp*) settings->instance), id);
+ case FreeRDP_XPan:
+ return settings->XPan;
+ break;
+
+ case FreeRDP_YPan:
+ return settings->YPan;
+ break;
+
+ default:
+ return 0;
+ break;
}
- return -1;
+ return 0;
+}
+
+int freerdp_set_param_int(rdpSettings* settings, int id, int param)
+{
+ ParamChangeEventArgs e;
+ rdpContext* context = ((freerdp*) settings->instance)->context;
+
+ switch (id)
+ {
+ case FreeRDP_XPan:
+ settings->XPan = param;
+ break;
+
+ case FreeRDP_YPan:
+ settings->YPan = param;
+ break;
+
+ default:
+ return -1;
+ break;
+ }
+
+ settings->settings_modified[id] = 1;
+
+ EventArgsInit(&e, "freerdp");
+ e.id = id;
- PubSub_OnParamChange(context->pubSub, context->instance, &e);
++ PubSub_OnParamChange(context->pubSub, context, &e);
+
+ return 0;
}
UINT32 freerdp_get_param_uint32(rdpSettings* settings, int id)
// Mark field as modified
settings->settings_modified[id] = 1;
- if (settings->instance)
- {
- IFCALL(((freerdp*) settings->instance)->context->client->OnParamChange, ((freerdp*) settings->instance), id);
- }
+
+ EventArgsInit(&e, "freerdp");
+ e.id = id;
- PubSub_OnParamChange(context->pubSub, context->instance, &e);
++ PubSub_OnParamChange(context->pubSub, context, &e);
return 0;
}
// Mark field as modified
settings->settings_modified[id] = 1;
- if (settings->instance)
- {
- IFCALL(((freerdp*) settings->instance)->context->client->OnParamChange, ((freerdp*) settings->instance), id);
- }
+
+ EventArgsInit(&e, "freerdp");
+ e.id = id;
- PubSub_OnParamChange(context->pubSub, context->instance, &e);
++ PubSub_OnParamChange(context->pubSub, context, &e);
return 0;
}
// Mark field as modified
settings->settings_modified[id] = 1;
- if (settings->instance)
+
+ EventArgsInit(&e, "freerdp");
+ e.id = id;
- PubSub_OnParamChange(context->pubSub, context->instance, &e);
++ PubSub_OnParamChange(context->pubSub, context, &e);
+
+ return 0;
+}
+
+double freerdp_get_param_double(rdpSettings* settings, int id)
+{
+ switch (id)
{
- IFCALL(((freerdp*) settings->instance)->context->client->OnParamChange, ((freerdp*) settings->instance), id);
+ case FreeRDP_ScalingFactor:
+ return settings->ScalingFactor;
+ break;
+
+ default:
+ return 0;
+ break;
+ }
+
+ return 0;
+}
+
+int freerdp_set_param_double(rdpSettings* settings, int id, double param)
+{
+ ParamChangeEventArgs e;
+ rdpContext* context = ((freerdp*) settings->instance)->context;
+
+ switch (id)
+ {
+ case FreeRDP_ScalingFactor:
+ settings->ScalingFactor = param;
+ break;
+
+ default:
+ return -1;
+ break;
}
- PubSub_OnParamChange(context->pubSub, context->instance, &e);
+ settings->settings_modified[id] = 1;
+
+ EventArgsInit(&e, "freerdp");
+ e.id = id;
++ PubSub_OnParamChange(context->pubSub, context, &e);
+
return 0;
}
update_write_surfcmd_surface_bits_header(s, surface_bits_command);
Stream_Write(s, surface_bits_command->bitmapData, surface_bits_command->bitmapDataLength);
fastpath_send_update_pdu(rdp->fastpath, FASTPATH_UPDATETYPE_SURFCMDS, s);
+
+ update_force_flush(context);
++
+ Stream_Release(s);
}
static void update_send_surface_frame_marker(rdpContext* context, SURFACE_FRAME_MARKER* surface_frame_marker)
s = fastpath_update_pdu_init(rdp->fastpath);
update_write_surfcmd_frame_marker(s, surface_frame_marker->frameAction, surface_frame_marker->frameId);
fastpath_send_update_pdu(rdp->fastpath, FASTPATH_UPDATETYPE_SURFCMDS, s);
+
+ update_force_flush(context);
++
+ Stream_Release(s);
}
static void update_send_frame_acknowledge(rdpContext* context, UINT32 frameId)