forked from mirrors/qmk_userspace
		
	Add direction to dynamic_macro_record_start_user (#19689)
This commit is contained in:
		
					parent
					
						
							
								9a68472da8
							
						
					
				
			
			
				commit
				
					
						68efea70b2
					
				
			
		
					 13 changed files with 17 additions and 17 deletions
				
			
		| 
						 | 
					@ -59,7 +59,7 @@ There are a number of hooks that you can use to add custom functionality and fee
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Note, that direction indicates which macro it is, with `1` being Macro 1, `-1` being Macro 2, and 0 being no macro. 
 | 
					Note, that direction indicates which macro it is, with `1` being Macro 1, `-1` being Macro 2, and 0 being no macro. 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
* `dynamic_macro_record_start_user(void)` - Triggered when you start recording a macro.
 | 
					* `dynamic_macro_record_start_user(int8_t direction)` - Triggered when you start recording a macro.
 | 
				
			||||||
* `dynamic_macro_play_user(int8_t direction)` - Triggered when you play back a macro.
 | 
					* `dynamic_macro_play_user(int8_t direction)` - Triggered when you play back a macro.
 | 
				
			||||||
* `dynamic_macro_record_key_user(int8_t direction, keyrecord_t *record)` - Triggered on each keypress while recording a macro.
 | 
					* `dynamic_macro_record_key_user(int8_t direction, keyrecord_t *record)` - Triggered on each keypress while recording a macro.
 | 
				
			||||||
* `dynamic_macro_record_end_user(int8_t direction)` - Triggered when the macro recording is stopped. 
 | 
					* `dynamic_macro_record_end_user(int8_t direction)` - Triggered when the macro recording is stopped. 
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -64,7 +64,7 @@ QMK はその場で作られた一時的なマクロをサポートします。
 | 
				
			||||||
 | 
					
 | 
				
			||||||
direction がどのマクロであるかを示すことに注意してください。`1` がマクロ 1、`-1` がマクロ 2、0 がマクロ無しです。
 | 
					direction がどのマクロであるかを示すことに注意してください。`1` がマクロ 1、`-1` がマクロ 2、0 がマクロ無しです。
 | 
				
			||||||
 | 
					
 | 
				
			||||||
* `dynamic_macro_record_start_user(void)` - マクロの記録を開始する時に起動されます。
 | 
					* `dynamic_macro_record_start_user(int8_t direction)` - マクロの記録を開始する時に起動されます。
 | 
				
			||||||
* `dynamic_macro_play_user(int8_t direction)` - マクロを再生する時に起動されます。
 | 
					* `dynamic_macro_play_user(int8_t direction)` - マクロを再生する時に起動されます。
 | 
				
			||||||
* `dynamic_macro_record_key_user(int8_t direction, keyrecord_t *record)` - マクロの記録中に各キー押下で起動されます。
 | 
					* `dynamic_macro_record_key_user(int8_t direction, keyrecord_t *record)` - マクロの記録中に各キー押下で起動されます。
 | 
				
			||||||
* `dynamic_macro_record_end_user(int8_t direction)` - マクロの記録を停止した時に起動されます。
 | 
					* `dynamic_macro_record_end_user(int8_t direction)` - マクロの記録を停止した時に起動されます。
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -138,7 +138,7 @@ void led_blink(void) {
 | 
				
			||||||
    backlight_toggle();
 | 
					    backlight_toggle();
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void dynamic_macro_record_start_user(void) {
 | 
					void dynamic_macro_record_start_user(int8_t direction) {
 | 
				
			||||||
    led_blink();
 | 
					    led_blink();
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -709,7 +709,7 @@ void leader_end_user(void) {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/**************** DYNAMIC MACRO *********************/
 | 
					/**************** DYNAMIC MACRO *********************/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void dynamic_macro_record_start_user(void) {
 | 
					void dynamic_macro_record_start_user(int8_t direction) {
 | 
				
			||||||
    onMac = false; /* reset layer bool as dynamic macro clear the keyboard and reset layers. */
 | 
					    onMac = false; /* reset layer bool as dynamic macro clear the keyboard and reset layers. */
 | 
				
			||||||
    if (!isBlinking && !isRecording) {
 | 
					    if (!isBlinking && !isRecording) {
 | 
				
			||||||
        reset_blink_cycle();
 | 
					        reset_blink_cycle();
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -408,7 +408,7 @@ static bool is_on = false;
 | 
				
			||||||
static bool is_dynamic_recording = false;
 | 
					static bool is_dynamic_recording = false;
 | 
				
			||||||
static uint16_t dynamic_loop_timer;
 | 
					static uint16_t dynamic_loop_timer;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void dynamic_macro_record_start_user(void) {
 | 
					void dynamic_macro_record_start_user(int8_t direction) {
 | 
				
			||||||
    is_dynamic_recording = true;
 | 
					    is_dynamic_recording = true;
 | 
				
			||||||
    dynamic_loop_timer = timer_read();
 | 
					    dynamic_loop_timer = timer_read();
 | 
				
			||||||
    ergodox_right_led_1_on();
 | 
					    ergodox_right_led_1_on();
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -113,7 +113,7 @@ bool rgb_matrix_indicators_user(void) {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// Called on start
 | 
					// Called on start
 | 
				
			||||||
void dynamic_macro_record_start_user(void) {
 | 
					void dynamic_macro_record_start_user(int8_t direction) {
 | 
				
			||||||
    dprint("-- Recording Started\n");
 | 
					    dprint("-- Recording Started\n");
 | 
				
			||||||
    layer_on(_UTILITY);
 | 
					    layer_on(_UTILITY);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -234,7 +234,7 @@ layer_state_t layer_state_set_user(layer_state_t state) {
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// Dynamic Macro Recording Backlight
 | 
					// Dynamic Macro Recording Backlight
 | 
				
			||||||
void dynamic_macro_record_start_user(void) {
 | 
					void dynamic_macro_record_start_user(int8_t direction) {
 | 
				
			||||||
    is_macro_recording = true;
 | 
					    is_macro_recording = true;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -42,7 +42,7 @@ static int current_accel = 0;
 | 
				
			||||||
    static uint16_t REC = DM_REC1;
 | 
					    static uint16_t REC = DM_REC1;
 | 
				
			||||||
    static uint16_t PLY = DM_PLY1;
 | 
					    static uint16_t PLY = DM_PLY1;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    void dynamic_macro_record_start_user(void) {
 | 
					    void dynamic_macro_record_start_user(int8_t direction) {
 | 
				
			||||||
        REC = DM_RSTP;
 | 
					        REC = DM_RSTP;
 | 
				
			||||||
        RECORDING = true;
 | 
					        RECORDING = true;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -28,7 +28,7 @@ bool is_launching     = false;
 | 
				
			||||||
#ifdef DYNAMIC_MACRO_ENABLE
 | 
					#ifdef DYNAMIC_MACRO_ENABLE
 | 
				
			||||||
static bool is_dynamic_recording = false;
 | 
					static bool is_dynamic_recording = false;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void dynamic_macro_record_start_user(void) { is_dynamic_recording = true; }
 | 
					void dynamic_macro_record_start_user(int8_t direction) { is_dynamic_recording = true; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void dynamic_macro_record_end_user(int8_t direction) {
 | 
					void dynamic_macro_record_end_user(int8_t direction) {
 | 
				
			||||||
    is_dynamic_recording = false;
 | 
					    is_dynamic_recording = false;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -204,7 +204,7 @@ void update_layer_leds(void) {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void dynamic_macro_record_start_user(void) {
 | 
					void dynamic_macro_record_start_user(int8_t direction) {
 | 
				
			||||||
    isRecording++;
 | 
					    isRecording++;
 | 
				
			||||||
    blink_cycle_timer = timer_read();
 | 
					    blink_cycle_timer = timer_read();
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -318,7 +318,7 @@ void keyboard_post_init_user(void) {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static bool prerecord_clicky = false;
 | 
					static bool prerecord_clicky = false;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void dynamic_macro_record_start_user(void) {
 | 
					void dynamic_macro_record_start_user(int8_t direction) {
 | 
				
			||||||
    prerecord_clicky = is_clicky_on();
 | 
					    prerecord_clicky = is_clicky_on();
 | 
				
			||||||
    if (!prerecord_clicky) {
 | 
					    if (!prerecord_clicky) {
 | 
				
			||||||
        clicky_on();
 | 
					        clicky_on();
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -29,7 +29,7 @@ void dynamic_macro_led_blink(void) {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* User hooks for Dynamic Macros */
 | 
					/* User hooks for Dynamic Macros */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
__attribute__((weak)) void dynamic_macro_record_start_user(void) {
 | 
					__attribute__((weak)) void dynamic_macro_record_start_user(int8_t direction) {
 | 
				
			||||||
    dynamic_macro_led_blink();
 | 
					    dynamic_macro_led_blink();
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -62,10 +62,10 @@ __attribute__((weak)) bool dynamic_macro_valid_key_user(uint16_t keycode, keyrec
 | 
				
			||||||
 * @param[out] macro_pointer The new macro buffer iterator.
 | 
					 * @param[out] macro_pointer The new macro buffer iterator.
 | 
				
			||||||
 * @param[in]  macro_buffer  The macro buffer used to initialize macro_pointer.
 | 
					 * @param[in]  macro_buffer  The macro buffer used to initialize macro_pointer.
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
void dynamic_macro_record_start(keyrecord_t **macro_pointer, keyrecord_t *macro_buffer) {
 | 
					void dynamic_macro_record_start(keyrecord_t **macro_pointer, keyrecord_t *macro_buffer, int8_t direction) {
 | 
				
			||||||
    dprintln("dynamic macro recording: started");
 | 
					    dprintln("dynamic macro recording: started");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    dynamic_macro_record_start_user();
 | 
					    dynamic_macro_record_start_user(direction);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    clear_keyboard();
 | 
					    clear_keyboard();
 | 
				
			||||||
    layer_clear();
 | 
					    layer_clear();
 | 
				
			||||||
| 
						 | 
					@ -213,11 +213,11 @@ bool process_dynamic_macro(uint16_t keycode, keyrecord_t *record) {
 | 
				
			||||||
        if (!record->event.pressed) {
 | 
					        if (!record->event.pressed) {
 | 
				
			||||||
            switch (keycode) {
 | 
					            switch (keycode) {
 | 
				
			||||||
                case QK_DYNAMIC_MACRO_RECORD_START_1:
 | 
					                case QK_DYNAMIC_MACRO_RECORD_START_1:
 | 
				
			||||||
                    dynamic_macro_record_start(¯o_pointer, macro_buffer);
 | 
					                    dynamic_macro_record_start(¯o_pointer, macro_buffer, +1);
 | 
				
			||||||
                    macro_id = 1;
 | 
					                    macro_id = 1;
 | 
				
			||||||
                    return false;
 | 
					                    return false;
 | 
				
			||||||
                case QK_DYNAMIC_MACRO_RECORD_START_2:
 | 
					                case QK_DYNAMIC_MACRO_RECORD_START_2:
 | 
				
			||||||
                    dynamic_macro_record_start(¯o_pointer, r_macro_buffer);
 | 
					                    dynamic_macro_record_start(¯o_pointer, r_macro_buffer, -1);
 | 
				
			||||||
                    macro_id = 2;
 | 
					                    macro_id = 2;
 | 
				
			||||||
                    return false;
 | 
					                    return false;
 | 
				
			||||||
                case QK_DYNAMIC_MACRO_PLAY_1:
 | 
					                case QK_DYNAMIC_MACRO_PLAY_1:
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -35,7 +35,7 @@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void dynamic_macro_led_blink(void);
 | 
					void dynamic_macro_led_blink(void);
 | 
				
			||||||
bool process_dynamic_macro(uint16_t keycode, keyrecord_t *record);
 | 
					bool process_dynamic_macro(uint16_t keycode, keyrecord_t *record);
 | 
				
			||||||
void dynamic_macro_record_start_user(void);
 | 
					void dynamic_macro_record_start_user(int8_t direction);
 | 
				
			||||||
void dynamic_macro_play_user(int8_t direction);
 | 
					void dynamic_macro_play_user(int8_t direction);
 | 
				
			||||||
void dynamic_macro_record_key_user(int8_t direction, keyrecord_t *record);
 | 
					void dynamic_macro_record_key_user(int8_t direction, keyrecord_t *record);
 | 
				
			||||||
void dynamic_macro_record_end_user(int8_t direction);
 | 
					void dynamic_macro_record_end_user(int8_t direction);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue